JBossWS SVN: r8401 - stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro.
by jbossws-commits@lists.jboss.org
Author: alessio.soldano(a)jboss.com
Date: 2008-10-08 20:19:56 -0400 (Wed, 08 Oct 2008)
New Revision: 8401
Modified:
stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/WsgenWrapperGenerator.java
Log:
[JBWS-2129] Using JarUtils and scanning the whole client dir
Modified: stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/WsgenWrapperGenerator.java
===================================================================
--- stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/WsgenWrapperGenerator.java 2008-10-08 23:44:43 UTC (rev 8400)
+++ stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/WsgenWrapperGenerator.java 2008-10-09 00:19:56 UTC (rev 8401)
@@ -40,6 +40,7 @@
import javax.xml.ws.WebServiceException;
import org.jboss.logging.Logger;
+import org.jboss.util.file.JarUtils;
import org.jboss.wsf.spi.SPIProvider;
import org.jboss.wsf.spi.SPIProviderResolver;
import org.jboss.wsf.spi.management.ServerConfig;
@@ -113,13 +114,15 @@
StringBuffer sb = new StringBuffer();
ServerConfig cfg = getServerConfig();
File clientDir = new File(cfg.getServerTempDir(), "/../../../client/"); //TODO!!!!
- //TODO!! read all client jars
- sb.append(new File(clientDir, "jboss-ejb3x.jar").getAbsolutePath()).append(File.pathSeparator);
- sb.append(new File(clientDir, "jbossall-client.jar").getAbsolutePath()).append(File.pathSeparator);
- sb.append(new File(clientDir, "jsr181-api.jar").getAbsolutePath()).append(File.pathSeparator);
- sb.append(new File(clientDir, "jbossws-spi.jar").getAbsolutePath()).append(File.pathSeparator);
- sb.append(new File(clientDir, "jbossws-common.jar").getAbsolutePath()).append(File.pathSeparator);
- sb.append(new File(clientDir, "jbossws-framework.jar").getAbsolutePath());
+ String[] libs = clientDir.list();
+ if (libs != null && libs.length > 0)
+ {
+ for (String lib : libs)
+ {
+ sb.append(lib).append(File.pathSeparator);
+ }
+ sb.delete(sb.length() - 1, sb.length());
+ }
URL[] urls = getURLs(classLoader, archiveUrl);
for (URL url : urls)
{
@@ -168,7 +171,7 @@
if (innerUrlList.isEmpty())
{
File dest = getTempDir(archiveUrl);
- unjar(archiveUrl.openStream(), dest);
+ JarUtils.unjar(archiveUrl.openStream(), dest);
File webInf = new File(dest, "WEB-INF");
if (webInf.exists())
{
@@ -187,7 +190,7 @@
else
{
File dest = getTempDir(archiveUrl);
- unjar(archiveUrl.openStream(), dest);
+ JarUtils.unjar(archiveUrl.openStream(), dest);
urls.add(dest.toURL());
}
}
@@ -198,57 +201,4 @@
}
return (URL[])urls.toArray(new URL[0]);
}
-
- public static void unjar(InputStream in, File dest) throws IOException
- {
- if (!dest.exists())
- dest.mkdirs();
- if (!dest.isDirectory())
- throw new IOException("Destination must be a directory.");
- JarInputStream jin = new JarInputStream(in);
- byte buffer[] = new byte[1024];
- for (ZipEntry entry = jin.getNextEntry(); entry != null; entry = jin.getNextEntry())
- {
- String fileName = entry.getName();
- if (fileName.charAt(fileName.length() - 1) == '/')
- fileName = fileName.substring(0, fileName.length() - 1);
- if (fileName.charAt(0) == '/')
- fileName = fileName.substring(1);
- if (File.separatorChar != '/')
- fileName = fileName.replace('/', File.separatorChar);
- File file = new File(dest, fileName);
- if (entry.isDirectory())
- {
- file.mkdirs();
- jin.closeEntry();
- continue;
- }
- File parent = file.getParentFile();
- if (parent != null && !parent.exists())
- parent.mkdirs();
- OutputStream out = new FileOutputStream(file);
- for (int len = 0; (len = jin.read(buffer, 0, buffer.length)) != -1;)
- out.write(buffer, 0, len);
-
- out.flush();
- out.close();
- jin.closeEntry();
- file.setLastModified(entry.getTime());
- }
-
- Manifest mf = jin.getManifest();
- if (mf != null)
- {
- File file = new File(dest, "META-INF/MANIFEST.MF");
- File parent = file.getParentFile();
- if (!parent.exists())
- parent.mkdirs();
- OutputStream out = new FileOutputStream(file);
- mf.write(out);
- out.flush();
- out.close();
- }
- jin.close();
- }
-
}
17 years, 2 months
JBossWS SVN: r8400 - framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1797.
by jbossws-commits@lists.jboss.org
Author: alessio.soldano(a)jboss.com
Date: 2008-10-08 19:44:43 -0400 (Wed, 08 Oct 2008)
New Revision: 8400
Modified:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1797/JBWS1797TestCase.java
Log:
Fixing wrong commit
Modified: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1797/JBWS1797TestCase.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1797/JBWS1797TestCase.java 2008-10-08 16:04:40 UTC (rev 8399)
+++ framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1797/JBWS1797TestCase.java 2008-10-08 23:44:43 UTC (rev 8400)
@@ -35,7 +35,6 @@
import javax.wsdl.xml.WSDLReader;
import javax.xml.namespace.QName;
import javax.xml.ws.Service;
-import javax.xml.ws.spi.Provider;
import junit.framework.Test;
@@ -62,14 +61,6 @@
@Override
protected void setUp() throws Exception
{
- ClassLoader cl = Thread.currentThread().getContextClassLoader();
- System.out.println(cl);
-
- Class clazz = Provider.class;
- System.out.println(clazz.getResource('/'+clazz.getName().replace('.','/')+".class"));
-
- System.setProperty("javax.xml.ws.spi.Provider", "org.jboss.wsf.stack.metro.client.ProviderImpl");
-
if (port == null)
{
QName serviceName = new QName(TARGET_NAMESPACE, "JBWS1797Service");
17 years, 2 months
JBossWS SVN: r8399 - in framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws: jbws1422 and 5 other directories.
by jbossws-commits@lists.jboss.org
Author: alessio.soldano(a)jboss.com
Date: 2008-10-08 12:04:40 -0400 (Wed, 08 Oct 2008)
New Revision: 8399
Modified:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1357/JBWS1357Impl.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1422/IWebsvcImpl.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1529/JBWS1529Impl.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1797/JBWS1797TestCase.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1822/webservice/EJB3Bean.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1822/webservice/EJB3RemoteIface.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1845/SpamComplaintWS.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1872/EJB3Bean1.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1872/EJB3Bean2.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1872/EJB3Bean3.java
Log:
Still fixing jaxws annotation usage
Modified: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1357/JBWS1357Impl.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1357/JBWS1357Impl.java 2008-10-08 14:30:37 UTC (rev 8398)
+++ framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1357/JBWS1357Impl.java 2008-10-08 16:04:40 UTC (rev 8399)
@@ -23,7 +23,7 @@
import javax.jws.WebService;
-@WebService(name="JBWS1357", serviceName="JBWS1357Service", endpointInterface="org.jboss.test.ws.jaxws.jbws1357.JBWS1357")
+@WebService(serviceName="JBWS1357Service", endpointInterface="org.jboss.test.ws.jaxws.jbws1357.JBWS1357")
public class JBWS1357Impl implements JBWS1357
{
public String echo(String message)
Modified: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1422/IWebsvcImpl.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1422/IWebsvcImpl.java 2008-10-08 14:30:37 UTC (rev 8398)
+++ framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1422/IWebsvcImpl.java 2008-10-08 16:04:40 UTC (rev 8399)
@@ -22,7 +22,6 @@
package org.jboss.test.ws.jaxws.jbws1422;
import javax.ejb.Stateless;
-import javax.jws.WebParam;
import javax.jws.WebService;
@Stateless
@@ -30,7 +29,7 @@
public class IWebsvcImpl implements IWebsvc
{
- public String cancel(@WebParam(name = "nBarFoo") String myfoobar)
+ public String cancel(String myfoobar)
{
return "Cancelled-" + myfoobar;
}
Modified: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1529/JBWS1529Impl.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1529/JBWS1529Impl.java 2008-10-08 14:30:37 UTC (rev 8398)
+++ framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1529/JBWS1529Impl.java 2008-10-08 16:04:40 UTC (rev 8399)
@@ -25,7 +25,7 @@
// An endpoint implementation that does not define a target namespace
// does NOT inherit the namespace from the referrenced SEI
-@WebService(name="JBWS1529", serviceName="JBWS1529Service", endpointInterface="org.jboss.test.ws.jaxws.jbws1529.JBWS1529")
+@WebService(serviceName="JBWS1529Service", endpointInterface="org.jboss.test.ws.jaxws.jbws1529.JBWS1529")
public class JBWS1529Impl implements JBWS1529
{
public String echo(String message) throws UserException
Modified: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1797/JBWS1797TestCase.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1797/JBWS1797TestCase.java 2008-10-08 14:30:37 UTC (rev 8398)
+++ framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1797/JBWS1797TestCase.java 2008-10-08 16:04:40 UTC (rev 8399)
@@ -35,6 +35,7 @@
import javax.wsdl.xml.WSDLReader;
import javax.xml.namespace.QName;
import javax.xml.ws.Service;
+import javax.xml.ws.spi.Provider;
import junit.framework.Test;
@@ -61,6 +62,14 @@
@Override
protected void setUp() throws Exception
{
+ ClassLoader cl = Thread.currentThread().getContextClassLoader();
+ System.out.println(cl);
+
+ Class clazz = Provider.class;
+ System.out.println(clazz.getResource('/'+clazz.getName().replace('.','/')+".class"));
+
+ System.setProperty("javax.xml.ws.spi.Provider", "org.jboss.wsf.stack.metro.client.ProviderImpl");
+
if (port == null)
{
QName serviceName = new QName(TARGET_NAMESPACE, "JBWS1797Service");
Modified: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1822/webservice/EJB3Bean.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1822/webservice/EJB3Bean.java 2008-10-08 14:30:37 UTC (rev 8398)
+++ framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1822/webservice/EJB3Bean.java 2008-10-08 16:04:40 UTC (rev 8399)
@@ -24,11 +24,10 @@
import javax.ejb.EJB;
import javax.ejb.Remote;
import javax.ejb.Stateless;
-import javax.jws.WebMethod;
import javax.jws.WebService;
-import javax.jws.soap.SOAPBinding;
-import org.jboss.wsf.spi.annotation.WebContext;
+
import org.jboss.test.ws.jaxws.jbws1822.shared.BeanIface;
+import org.jboss.wsf.spi.annotation.WebContext;
/**
* EJB3 bean published as WebService injecting other EJB3 bean
@@ -37,9 +36,8 @@
*
* @since 08-Jan-2008
*/
-@WebService(name = "EndpointIface", targetNamespace = "http://jbossws.org/JBWS1822", serviceName = "EndpointService", endpointInterface="org.jboss.test.ws.jaxws.jbws1822.webservice.EJB3RemoteIface")
+@WebService(targetNamespace = "http://jbossws.org/JBWS1822", serviceName = "EndpointService", endpointInterface="org.jboss.test.ws.jaxws.jbws1822.webservice.EJB3RemoteIface")
@WebContext(contextRoot="/jaxws-jbws1822", urlPattern="/*")
-@SOAPBinding(style = SOAPBinding.Style.RPC)
@Remote(EJB3RemoteIface.class)
@Stateless
public class EJB3Bean implements EJB3RemoteIface
@@ -47,7 +45,6 @@
@EJB
private BeanIface testBean;
- @WebMethod
public String getMessage()
{
return testBean.printString();
Modified: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1822/webservice/EJB3RemoteIface.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1822/webservice/EJB3RemoteIface.java 2008-10-08 14:30:37 UTC (rev 8398)
+++ framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1822/webservice/EJB3RemoteIface.java 2008-10-08 16:04:40 UTC (rev 8399)
@@ -21,7 +21,9 @@
*/
package org.jboss.test.ws.jaxws.jbws1822.webservice;
+import javax.jws.WebMethod;
import javax.jws.WebService;
+import javax.jws.soap.SOAPBinding;
/**
* An EJB3 remote interface
@@ -31,7 +33,9 @@
* @since 08-Jan-2008
*/
@WebService
+@SOAPBinding(style = SOAPBinding.Style.RPC)
public interface EJB3RemoteIface
{
+ @WebMethod
String getMessage();
}
Modified: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1845/SpamComplaintWS.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1845/SpamComplaintWS.java 2008-10-08 14:30:37 UTC (rev 8398)
+++ framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1845/SpamComplaintWS.java 2008-10-08 16:04:40 UTC (rev 8399)
@@ -49,7 +49,7 @@
contextRoot="/jaxws-jbws1845",
urlPattern="/SpamService"
)
-public final class SpamComplaintWS implements SpamComplaintWSIface
+public class SpamComplaintWS implements SpamComplaintWSIface
{
@WebMethod(operationName="processSpamComplaints")
@WebResult(name="SpamResult")
Modified: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1872/EJB3Bean1.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1872/EJB3Bean1.java 2008-10-08 14:30:37 UTC (rev 8398)
+++ framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1872/EJB3Bean1.java 2008-10-08 16:04:40 UTC (rev 8399)
@@ -21,11 +21,10 @@
*/
package org.jboss.test.ws.jaxws.jbws1872;
-import javax.jws.WebMethod;
-import javax.jws.WebService;
-import javax.ejb.Stateless;
import javax.ejb.Local;
import javax.ejb.Remote;
+import javax.ejb.Stateless;
+import javax.jws.WebService;
/**
* EJB3 bean implementing both Local and Remote interfaces
@@ -36,10 +35,9 @@
@Stateless
@Remote(RemoteIface.class)
@Local(LocalIface.class)
-public final class EJB3Bean1 implements RemoteIface, LocalIface
+public class EJB3Bean1 implements RemoteIface, LocalIface
{
- @WebMethod
public String echo(String msg)
{
return "bean1-" + msg;
Modified: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1872/EJB3Bean2.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1872/EJB3Bean2.java 2008-10-08 14:30:37 UTC (rev 8398)
+++ framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1872/EJB3Bean2.java 2008-10-08 16:04:40 UTC (rev 8399)
@@ -23,7 +23,6 @@
import javax.ejb.Local;
import javax.ejb.Stateless;
-import javax.jws.WebMethod;
import javax.jws.WebService;
/**
@@ -34,10 +33,9 @@
@WebService(name = "Bean2", targetNamespace = "http://org.jboss.ws/jbws1872")
@Stateless
@Local(LocalIface.class)
-public final class EJB3Bean2 implements LocalIface
+public class EJB3Bean2 implements LocalIface
{
- @WebMethod
public String echo(String msg)
{
return "bean2-" + msg;
Modified: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1872/EJB3Bean3.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1872/EJB3Bean3.java 2008-10-08 14:30:37 UTC (rev 8398)
+++ framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws1872/EJB3Bean3.java 2008-10-08 16:04:40 UTC (rev 8399)
@@ -23,7 +23,6 @@
import javax.ejb.Remote;
import javax.ejb.Stateless;
-import javax.jws.WebMethod;
import javax.jws.WebService;
/**
@@ -34,10 +33,9 @@
@WebService(name = "Bean3", targetNamespace = "http://org.jboss.ws/jbws1872")
@Stateless
@Remote(RemoteIface.class)
-public final class EJB3Bean3 implements RemoteIface
+public class EJB3Bean3 implements RemoteIface
{
- @WebMethod
public String echo(String msg)
{
return "bean3-" + msg;
17 years, 2 months
JBossWS SVN: r8398 - framework/trunk/src/main/java/org/jboss/wsf/framework/deployment.
by jbossws-commits@lists.jboss.org
Author: richard.opalka(a)jboss.com
Date: 2008-10-08 10:30:37 -0400 (Wed, 08 Oct 2008)
New Revision: 8398
Modified:
framework/trunk/src/main/java/org/jboss/wsf/framework/deployment/AbstractAspectizedEndpointServlet.java
framework/trunk/src/main/java/org/jboss/wsf/framework/deployment/AbstractEndpointServlet.java
Log:
[JBWS-2246][JBWS-2264][JBAS-5732] refactoring
Modified: framework/trunk/src/main/java/org/jboss/wsf/framework/deployment/AbstractAspectizedEndpointServlet.java
===================================================================
--- framework/trunk/src/main/java/org/jboss/wsf/framework/deployment/AbstractAspectizedEndpointServlet.java 2008-10-08 14:27:31 UTC (rev 8397)
+++ framework/trunk/src/main/java/org/jboss/wsf/framework/deployment/AbstractAspectizedEndpointServlet.java 2008-10-08 14:30:37 UTC (rev 8398)
@@ -24,6 +24,7 @@
import org.jboss.wsf.spi.DeploymentAspectManagerLocator;
import org.jboss.wsf.spi.deployment.Deployment;
import org.jboss.wsf.spi.deployment.DeploymentAspectManager;
+import org.jboss.wsf.spi.deployment.Endpoint.EndpointState;
/**
* A cross stack aspectized webservice servlet that is installed for every web service endpoint on AS 5.x series
@@ -87,8 +88,32 @@
super.stopAspectManager();
}
}
-
+
/**
+ * Fires endpoint start event
+ */
+ @Override
+ protected final void startEndpoint()
+ {
+ if (this.endpoint.getState() == EndpointState.CREATED)
+ {
+ this.endpoint.getLifecycleHandler().start(this.endpoint);
+ }
+ }
+
+ /**
+ * Fires endpoint stop event
+ */
+ @Override
+ protected final void stopEndpoint()
+ {
+ if (this.endpoint.getState() == EndpointState.STARTED)
+ {
+ this.endpoint.getLifecycleHandler().stop(this.endpoint);
+ }
+ }
+
+ /**
* Asserts this object correct state
*/
private void assertCorrectState()
Modified: framework/trunk/src/main/java/org/jboss/wsf/framework/deployment/AbstractEndpointServlet.java
===================================================================
--- framework/trunk/src/main/java/org/jboss/wsf/framework/deployment/AbstractEndpointServlet.java 2008-10-08 14:27:31 UTC (rev 8397)
+++ framework/trunk/src/main/java/org/jboss/wsf/framework/deployment/AbstractEndpointServlet.java 2008-10-08 14:30:37 UTC (rev 8398)
@@ -119,7 +119,7 @@
}
/**
- * Template method
+ * Template method for initializing aspect manager
*/
protected void initAspectManager()
{
@@ -127,7 +127,7 @@
}
/**
- * Template method
+ * Template method for starting aspect manager
*/
protected void startAspectManager()
{
@@ -135,7 +135,7 @@
}
/**
- * Template method
+ * Template method for stopping aspect manager
*/
protected void stopAspectManager()
{
@@ -143,6 +143,22 @@
}
/**
+ * Template method to fire endpoint start event
+ */
+ protected void startEndpoint()
+ {
+ // does nothing (because of BC)
+ }
+
+ /**
+ * Template method to fire endpoint stop event
+ */
+ protected void stopEndpoint()
+ {
+ // does nothing (because of BC)
+ }
+
+ /**
* Abstract method that must be overriden by each stack servlet endpoint
* @param servletContext servlet context
* @param servletName servlet name
@@ -205,20 +221,4 @@
}
}
- private void startEndpoint()
- {
- if (this.endpoint.getState() == EndpointState.CREATED)
- {
- this.endpoint.getLifecycleHandler().start(this.endpoint);
- }
- }
-
- private void stopEndpoint()
- {
- if (this.endpoint.getState() == EndpointState.STARTED)
- {
- this.endpoint.getLifecycleHandler().stop(this.endpoint);
- }
- }
-
}
17 years, 2 months
JBossWS SVN: r8397 - in stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro: metadata and 1 other directory.
by jbossws-commits@lists.jboss.org
Author: alessio.soldano(a)jboss.com
Date: 2008-10-08 10:27:31 -0400 (Wed, 08 Oct 2008)
New Revision: 8397
Added:
stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/WsgenWrapperGenerator.java
Modified:
stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/DeploymentDescriptorParserExt.java
stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/metadata/RuntimeModelDeploymentAspect.java
Log:
[JBWS-2129] First raw implementation, based on wsgen
Modified: stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/DeploymentDescriptorParserExt.java
===================================================================
--- stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/DeploymentDescriptorParserExt.java 2008-10-08 14:25:37 UTC (rev 8396)
+++ stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/DeploymentDescriptorParserExt.java 2008-10-08 14:27:31 UTC (rev 8397)
@@ -27,6 +27,7 @@
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
+import java.net.URLClassLoader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
@@ -45,6 +46,7 @@
import javax.xml.ws.soap.MTOMFeature;
import javax.xml.ws.soap.SOAPBinding;
+import org.jboss.wsf.spi.deployment.UnifiedVirtualFile;
import org.xml.sax.EntityResolver;
import com.sun.xml.ws.api.BindingID;
@@ -103,6 +105,8 @@
private final ClassLoader classLoader;
private final ResourceLoader loader;
private final AdapterFactory<A> adapterFactory;
+
+ private UnifiedVirtualFile archiveFile;
private static final org.jboss.logging.Logger log = org.jboss.logging.Logger.getLogger(DeploymentDescriptorParserExt.class);
@@ -298,6 +302,12 @@
ensureNoContent(reader);
Invoker invoker = createInvoker(implementorClass);
+
+ //Generate wrappers
+ WsgenWrapperGenerator wrapperGenerator = new WsgenWrapperGenerator(System.out);
+ ClassLoader newClassLoader = wrapperGenerator.generate(implementationName, classLoader, archiveFile.toURL());
+ Thread.currentThread().setContextClassLoader(newClassLoader);
+
WSEndpoint<?> endpoint = WSEndpoint.create(implementorClass, !handlersSetInDD, invoker,
serviceName, portName, container, binding, primaryWSDL, docs.values(), createEntityResolver(this.loader), false);
adapters.add(adapterFactory.createAdapter(name, urlPattern, endpoint));
@@ -597,4 +607,9 @@
throw new LocatableWebServiceException(ServerMessages.RUNTIME_PARSER_CLASS_NOT_FOUND(name), e, reader);
}
}
+
+ public void setArchiveFile(UnifiedVirtualFile file)
+ {
+ this.archiveFile = file;
+ }
}
Added: stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/WsgenWrapperGenerator.java
===================================================================
--- stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/WsgenWrapperGenerator.java (rev 0)
+++ stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/WsgenWrapperGenerator.java 2008-10-08 14:27:31 UTC (rev 8397)
@@ -0,0 +1,254 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.wsf.stack.metro;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.net.URL;
+import java.net.URLClassLoader;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.jar.JarInputStream;
+import java.util.jar.Manifest;
+import java.util.zip.ZipEntry;
+
+import javax.xml.ws.WebServiceException;
+
+import org.jboss.logging.Logger;
+import org.jboss.wsf.spi.SPIProvider;
+import org.jboss.wsf.spi.SPIProviderResolver;
+import org.jboss.wsf.spi.management.ServerConfig;
+import org.jboss.wsf.spi.management.ServerConfigFactory;
+
+import com.sun.tools.ws.wscompile.WsgenTool;
+
+/**
+ *
+ * @author alessio.soldano(a)jboss.com
+ * @since 06-Oct-2008
+ */
+public class WsgenWrapperGenerator
+{
+ private static Logger log = Logger.getLogger(WsgenWrapperGenerator.class);
+
+ private OutputStream outputStream;
+ private ServerConfig serverConfig;
+
+ public WsgenWrapperGenerator(OutputStream outputStream)
+ {
+ this.outputStream = outputStream;
+ }
+
+ public ClassLoader generate(String endpoint, ClassLoader classLoader, URL archiveUrl)
+ {
+ log.info("ImplementationName: " + endpoint);
+ log.info("Archive file: " + archiveUrl);
+ File tempDir = getTempDir(archiveUrl);
+ log.info("Temp directory: " + tempDir);
+
+ WsgenTool wsgen = new WsgenTool(outputStream);
+ List<String> args = new ArrayList<String>();
+ args.add("-cp");
+ args.add(getClasspath(classLoader, archiveUrl));
+ args.add("-d");
+ args.add(tempDir.getAbsolutePath());
+ args.add("-keep"); //TODO!!! sources should not be needed
+ args.add("-verbose");
+ args.add("-s"); //TODO!!! sources should not be needed
+ args.add(tempDir.getAbsolutePath());
+ args.add(endpoint);
+ try
+ {
+ log.info("Invoking Wsgen with the following parameters: " + args);
+ if (!wsgen.run(args.toArray(new String[0])))
+ throw new WebServiceException("Wsgen invocation failed: see the logs for details.");
+
+ URLClassLoader newClassloader = new URLClassLoader(new URL[] { tempDir.toURL() }, classLoader);
+ return newClassloader;
+ }
+ catch (Exception e)
+ {
+ throw new WebServiceException("Unable to generate wrapper classes", e);
+ }
+ }
+
+ private ServerConfig getServerConfig()
+ {
+ if (serverConfig == null)
+ {
+ SPIProvider provider = SPIProviderResolver.getInstance().getProvider();
+ ServerConfigFactory spi = provider.getSPI(ServerConfigFactory.class);
+ serverConfig = spi.getServerConfig();
+ }
+ return serverConfig;
+ }
+
+ protected String getClasspath(ClassLoader classLoader, URL archiveUrl)
+ {
+ StringBuffer sb = new StringBuffer();
+ ServerConfig cfg = getServerConfig();
+ File clientDir = new File(cfg.getServerTempDir(), "/../../../client/"); //TODO!!!!
+ //TODO!! read all client jars
+ sb.append(new File(clientDir, "jboss-ejb3x.jar").getAbsolutePath()).append(File.pathSeparator);
+ sb.append(new File(clientDir, "jbossall-client.jar").getAbsolutePath()).append(File.pathSeparator);
+ sb.append(new File(clientDir, "jsr181-api.jar").getAbsolutePath()).append(File.pathSeparator);
+ sb.append(new File(clientDir, "jbossws-spi.jar").getAbsolutePath()).append(File.pathSeparator);
+ sb.append(new File(clientDir, "jbossws-common.jar").getAbsolutePath()).append(File.pathSeparator);
+ sb.append(new File(clientDir, "jbossws-framework.jar").getAbsolutePath());
+ URL[] urls = getURLs(classLoader, archiveUrl);
+ for (URL url : urls)
+ {
+ sb.append(File.pathSeparator);
+ sb.append(url.toString());
+ }
+ return sb.toString();
+ }
+
+ protected File getTempDir(URL archiveUrl)
+ {
+ File tempJBossWSDir = new File(getServerConfig().getServerTempDir(), "jbossws");
+ if (!tempJBossWSDir.exists())
+ tempJBossWSDir.mkdir();
+ String archivePath = archiveUrl.toString();
+ String archiveName = archivePath.substring(archivePath.lastIndexOf(File.separator));
+ File tempDir = new File(tempJBossWSDir, archiveName + "-" + new Date().getTime());
+ if (!tempDir.exists())
+ tempDir.mkdir();
+ return tempDir;
+ }
+
+ private URL[] getURLs(ClassLoader classLoader, URL archiveUrl)
+ {
+ List<URL> urls = new LinkedList<URL>();
+
+// //This does not work when deploying through the jbossws testsuite (i.e. not dropping the archive to the deploy dir)
+// if (classLoader instanceof URLClassLoader)
+// {
+// urls.addAll(Arrays.asList(((URLClassLoader)classLoader).getURLs()));
+// }
+// else
+// {
+// urls.add(archiveFile.toURL());
+// }
+
+ try
+ {
+ if (archiveUrl.toString().endsWith(".war"))
+ {
+ List<URL> innerUrlList = new LinkedList<URL>();
+ if (classLoader instanceof URLClassLoader)
+ {
+ innerUrlList.addAll(Arrays.asList(((URLClassLoader)classLoader).getURLs()));
+ }
+ if (innerUrlList.isEmpty())
+ {
+ File dest = getTempDir(archiveUrl);
+ unjar(archiveUrl.openStream(), dest);
+ File webInf = new File(dest, "WEB-INF");
+ if (webInf.exists())
+ {
+ innerUrlList.add(webInf.toURL());
+ innerUrlList.add(new File(webInf, "classes").toURL());
+ }
+ }
+ urls.addAll(innerUrlList);
+ }
+ else //jar
+ {
+ if (new File(archiveUrl.getPath()).exists())
+ {
+ urls.add(archiveUrl);
+ }
+ else
+ {
+ File dest = getTempDir(archiveUrl);
+ unjar(archiveUrl.openStream(), dest);
+ urls.add(dest.toURL());
+ }
+ }
+ }
+ catch (Exception e)
+ {
+ throw new WebServiceException("Cannot get classpath URLs for archive: " + archiveUrl, e);
+ }
+ return (URL[])urls.toArray(new URL[0]);
+ }
+
+ public static void unjar(InputStream in, File dest) throws IOException
+ {
+ if (!dest.exists())
+ dest.mkdirs();
+ if (!dest.isDirectory())
+ throw new IOException("Destination must be a directory.");
+ JarInputStream jin = new JarInputStream(in);
+ byte buffer[] = new byte[1024];
+ for (ZipEntry entry = jin.getNextEntry(); entry != null; entry = jin.getNextEntry())
+ {
+ String fileName = entry.getName();
+ if (fileName.charAt(fileName.length() - 1) == '/')
+ fileName = fileName.substring(0, fileName.length() - 1);
+ if (fileName.charAt(0) == '/')
+ fileName = fileName.substring(1);
+ if (File.separatorChar != '/')
+ fileName = fileName.replace('/', File.separatorChar);
+ File file = new File(dest, fileName);
+ if (entry.isDirectory())
+ {
+ file.mkdirs();
+ jin.closeEntry();
+ continue;
+ }
+ File parent = file.getParentFile();
+ if (parent != null && !parent.exists())
+ parent.mkdirs();
+ OutputStream out = new FileOutputStream(file);
+ for (int len = 0; (len = jin.read(buffer, 0, buffer.length)) != -1;)
+ out.write(buffer, 0, len);
+
+ out.flush();
+ out.close();
+ jin.closeEntry();
+ file.setLastModified(entry.getTime());
+ }
+
+ Manifest mf = jin.getManifest();
+ if (mf != null)
+ {
+ File file = new File(dest, "META-INF/MANIFEST.MF");
+ File parent = file.getParentFile();
+ if (!parent.exists())
+ parent.mkdirs();
+ OutputStream out = new FileOutputStream(file);
+ mf.write(out);
+ out.flush();
+ out.close();
+ }
+ jin.close();
+ }
+
+}
Property changes on: stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/WsgenWrapperGenerator.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/metadata/RuntimeModelDeploymentAspect.java
===================================================================
--- stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/metadata/RuntimeModelDeploymentAspect.java 2008-10-08 14:25:37 UTC (rev 8396)
+++ stack/metro/branches/asoldano/modules/server/src/main/java/org/jboss/wsf/stack/metro/metadata/RuntimeModelDeploymentAspect.java 2008-10-08 14:27:31 UTC (rev 8397)
@@ -104,11 +104,14 @@
// Parse the descriptor file and build endpoint infos
DeploymentDescriptorParserExt<ServletAdapter> parser =
createDeploymentDescriptorParser(runtimeLoader, container, resourceLoader, adapterList);
+
+ parser.setArchiveFile(vfsRoot);
URL sunJaxWsXml = getDDUrlFromContext(deployment);
List<ServletAdapter> adapters = parser.parse(sunJaxWsXml.toExternalForm(), sunJaxWsXml.openStream());
+
for(ServletAdapter adapter : adapters)
{
for(Endpoint ep : deployment.getService().getEndpoints())
17 years, 2 months
JBossWS SVN: r8396 - stack/metro/branches/asoldano/modules/resources/src/main/resources/resources.
by jbossws-commits@lists.jboss.org
Author: alessio.soldano(a)jboss.com
Date: 2008-10-08 10:25:37 -0400 (Wed, 08 Oct 2008)
New Revision: 8396
Modified:
stack/metro/branches/asoldano/modules/resources/src/main/resources/resources/jbossws-deploy-macros.xml
Log:
[JBWS-2129] Adding jaxb-xjc.jar to deploy
Modified: stack/metro/branches/asoldano/modules/resources/src/main/resources/resources/jbossws-deploy-macros.xml
===================================================================
--- stack/metro/branches/asoldano/modules/resources/src/main/resources/resources/jbossws-deploy-macros.xml 2008-10-08 14:01:36 UTC (rev 8395)
+++ stack/metro/branches/asoldano/modules/resources/src/main/resources/resources/jbossws-deploy-macros.xml 2008-10-08 14:25:37 UTC (rev 8396)
@@ -74,6 +74,7 @@
<include name="**/http.jar"/>
<include name="**/jaxb-api.jar"/>
<include name="**/jaxb-impl.jar"/>
+ <include name="**/jaxb-xjc.jar"/>
<include name="**/jaxrpc-api.jar"/>
<include name="**/jaxws-local-transport.jar"/>
<include name="**/jaxws-rt.jar"/>
17 years, 2 months
JBossWS SVN: r8395 - in stack/native/trunk/modules: core/src/main/scripts and 1 other directories.
by jbossws-commits@lists.jboss.org
Author: richard.opalka(a)jboss.com
Date: 2008-10-08 10:01:36 -0400 (Wed, 08 Oct 2008)
New Revision: 8395
Modified:
stack/native/trunk/modules/core/src/main/resources/as5-jbossws-native-config.xml
stack/native/trunk/modules/core/src/main/scripts/antrun-beans-config.xml
stack/native/trunk/modules/testsuite/pom.xml
Log:
[JBWS-2246][JBWS-2264][JBAS-5732] switch to new AS5 deployment model
Modified: stack/native/trunk/modules/core/src/main/resources/as5-jbossws-native-config.xml
===================================================================
--- stack/native/trunk/modules/core/src/main/resources/as5-jbossws-native-config.xml 2008-10-08 13:58:13 UTC (rev 8394)
+++ stack/native/trunk/modules/core/src/main/resources/as5-jbossws-native-config.xml 2008-10-08 14:01:36 UTC (rev 8395)
@@ -101,10 +101,6 @@
<property name="provides">JAXBIntros</property>
</bean>
- <bean name="WSEndpointServletLifecycleDeploymentAspect" class="org.jboss.wsf.framework.deployment.EndpointServletLifecycleDeploymentAspect">
- <property name="requires">LAST_DEPLOYMENT_ASPECT</property>
- </bean>
-
<!-- This is hacky DA because endpoint servlet DAs depend on deployers DAs. But servlet DAs and deployers DAs are not in the same DA chain -->
<bean name="WSNativeDeployersProvidedDeploymentAspect" class="org.jboss.wsf.framework.deployment.IdentityDeploymentAspect">
<property name="provides">RuntimeLoader,ContainerMetaData,URLPattern,VFSRoot,JAXBIntros,StackEndpointHandler</property>
@@ -176,7 +172,6 @@
<inject bean="WSNativeServiceEndpointInvokerDeploymentAspect"/>
<inject bean="WSNativeRMDeploymentAspect"/>
<inject bean="WSNativeUnifiedMetaDataDeploymentAspect"/>
- <inject bean="WSEndpointServletLifecycleDeploymentAspect"/>
</set>
</property>
</bean>
Modified: stack/native/trunk/modules/core/src/main/scripts/antrun-beans-config.xml
===================================================================
--- stack/native/trunk/modules/core/src/main/scripts/antrun-beans-config.xml 2008-10-08 13:58:13 UTC (rev 8394)
+++ stack/native/trunk/modules/core/src/main/scripts/antrun-beans-config.xml 2008-10-08 14:01:36 UTC (rev 8395)
@@ -68,7 +68,7 @@
<concat destfile="${project.build.resources.directory}/jbossws-jboss500/jbossws.beans/META-INF/jboss-beans.xml">
<header trimleading="yes">
<deployment xmlns="urn:jboss:bean-deployer:2.0"> </header>
- <fileset file="${project.resources.directory}/as4-jbossws-native-config.xml"/>
+ <fileset file="${project.resources.directory}/as5-jbossws-native-config.xml"/>
<footer trimleading="yes">
</deployment> </footer>
</concat>
@@ -78,7 +78,7 @@
<concat destfile="${project.build.resources.directory}/jbossws-jboss501/jbossws.beans/META-INF/jboss-beans.xml">
<header trimleading="yes">
<deployment xmlns="urn:jboss:bean-deployer:2.0"> </header>
- <fileset file="${project.resources.directory}/as4-jbossws-native-config.xml"/>
+ <fileset file="${project.resources.directory}/as5-jbossws-native-config.xml"/>
<footer trimleading="yes">
</deployment> </footer>
</concat>
Modified: stack/native/trunk/modules/testsuite/pom.xml
===================================================================
--- stack/native/trunk/modules/testsuite/pom.xml 2008-10-08 13:58:13 UTC (rev 8394)
+++ stack/native/trunk/modules/testsuite/pom.xml 2008-10-08 14:01:36 UTC (rev 8395)
@@ -410,7 +410,7 @@
<properties>
<jboss.version>5.0.0.CR2</jboss.version>
<jbossws.integration.target>jboss500</jbossws.integration.target>
- <endpoint.servlet>org.jboss.wsf.stack.jbws.EndpointServlet</endpoint.servlet>
+ <endpoint.servlet>org.jboss.wsf.stack.jbws.AspectizedEndpointServlet</endpoint.servlet>
</properties>
<dependencies>
<!-- [JBWS-2263] -->
@@ -479,7 +479,7 @@
<properties>
<jboss.version>5.0.0-SNAPSHOT</jboss.version>
<jbossws.integration.target>jboss501</jbossws.integration.target>
- <endpoint.servlet>org.jboss.wsf.stack.jbws.EndpointServlet</endpoint.servlet>
+ <endpoint.servlet>org.jboss.wsf.stack.jbws.AspectizedEndpointServlet</endpoint.servlet>
</properties>
<dependencies>
<!-- [JBWS-2263] -->
17 years, 2 months
JBossWS SVN: r8394 - in stack/metro/trunk/modules: server/src/main/resources and 2 other directories.
by jbossws-commits@lists.jboss.org
Author: richard.opalka(a)jboss.com
Date: 2008-10-08 09:58:13 -0400 (Wed, 08 Oct 2008)
New Revision: 8394
Modified:
stack/metro/trunk/modules/server/src/main/java/org/jboss/wsf/stack/metro/metadata/RuntimeModelDeploymentAspect.java
stack/metro/trunk/modules/server/src/main/resources/as5-jbossws-metro-config.xml
stack/metro/trunk/modules/server/src/main/scripts/antrun-beans-config.xml
stack/metro/trunk/modules/testsuite/pom.xml
Log:
[JBWS-2246][JBWS-2264][JBAS-5732] switch to new AS5 deployment model
Modified: stack/metro/trunk/modules/server/src/main/java/org/jboss/wsf/stack/metro/metadata/RuntimeModelDeploymentAspect.java
===================================================================
--- stack/metro/trunk/modules/server/src/main/java/org/jboss/wsf/stack/metro/metadata/RuntimeModelDeploymentAspect.java 2008-10-08 13:57:00 UTC (rev 8393)
+++ stack/metro/trunk/modules/server/src/main/java/org/jboss/wsf/stack/metro/metadata/RuntimeModelDeploymentAspect.java 2008-10-08 13:58:13 UTC (rev 8394)
@@ -120,8 +120,10 @@
{
MessageStreamAdapter msgStreamAdapter = MessageStreamAdapter.FACTORY.createAdapter(adapter.getName(), null, adapter.getEndpoint());
// TODO JBWS-1869: Support stream based RequestHandler API
- ep.addAttachment(MessageStreamAdapter.class, msgStreamAdapter);
- ep.addAttachment(ServletAdapter.class, adapter);
+ if (ep.getAttachment(MessageStreamAdapter.class) == null) // TODO: review to don't insert the same attachments multiple times
+ ep.addAttachment(MessageStreamAdapter.class, msgStreamAdapter); // do it only once
+ if (ep.getAttachment(ServletAdapter.class) == null)
+ ep.addAttachment(ServletAdapter.class, adapter); // TODO: review to don't insert the same attachments multiple times
break;
}
}
Modified: stack/metro/trunk/modules/server/src/main/resources/as5-jbossws-metro-config.xml
===================================================================
--- stack/metro/trunk/modules/server/src/main/resources/as5-jbossws-metro-config.xml 2008-10-08 13:57:00 UTC (rev 8393)
+++ stack/metro/trunk/modules/server/src/main/resources/as5-jbossws-metro-config.xml 2008-10-08 13:58:13 UTC (rev 8394)
@@ -84,10 +84,6 @@
<property name="provides">RuntimeModel</property>
</bean>
- <bean name="WSEndpointServletLifecycleDeploymentAspect" class="org.jboss.wsf.framework.deployment.EndpointServletLifecycleDeploymentAspect">
- <property name="requires">LAST_DEPLOYMENT_ASPECT</property>
- </bean>
-
<!-- This is hacky DA because endpoint servlet DAs depend on deployers DAs. But servlet DAs and deployers DAs are not in the same DA chain -->
<bean name="WSMetroDeployersProvidedDeploymentAspect" class="org.jboss.wsf.framework.deployment.IdentityDeploymentAspect">
<property name="provides">RuntimeLoader,URLPattern,WebMetaData,StackDescriptor</property>
@@ -140,7 +136,6 @@
<set class="java.util.HashSet" elementClass="org.jboss.wsf.spi.deployment.DeploymentAspect">
<inject bean="WSMetroDeployersProvidedDeploymentAspect"/><!-- hacky DA -->
<inject bean="WSRuntimeModelDeploymentAspect"/>
- <inject bean="WSEndpointServletLifecycleDeploymentAspect"/>
</set>
</property>
</bean>
Modified: stack/metro/trunk/modules/server/src/main/scripts/antrun-beans-config.xml
===================================================================
--- stack/metro/trunk/modules/server/src/main/scripts/antrun-beans-config.xml 2008-10-08 13:57:00 UTC (rev 8393)
+++ stack/metro/trunk/modules/server/src/main/scripts/antrun-beans-config.xml 2008-10-08 13:58:13 UTC (rev 8394)
@@ -68,7 +68,7 @@
<concat destfile="${project.build.resources.directory}/jbossws-jboss500/jbossws.beans/META-INF/jboss-beans.xml">
<header trimleading="yes">
<deployment xmlns="urn:jboss:bean-deployer:2.0"> </header>
- <fileset file="${project.resources.directory}/as4-jbossws-metro-config.xml"/>
+ <fileset file="${project.resources.directory}/as5-jbossws-metro-config.xml"/>
<footer trimleading="yes">
</deployment> </footer>
</concat>
@@ -78,7 +78,7 @@
<concat destfile="${project.build.resources.directory}/jbossws-jboss501/jbossws.beans/META-INF/jboss-beans.xml">
<header trimleading="yes">
<deployment xmlns="urn:jboss:bean-deployer:2.0"> </header>
- <fileset file="${project.resources.directory}/as4-jbossws-metro-config.xml"/>
+ <fileset file="${project.resources.directory}/as5-jbossws-metro-config.xml"/>
<footer trimleading="yes">
</deployment> </footer>
</concat>
Modified: stack/metro/trunk/modules/testsuite/pom.xml
===================================================================
--- stack/metro/trunk/modules/testsuite/pom.xml 2008-10-08 13:57:00 UTC (rev 8393)
+++ stack/metro/trunk/modules/testsuite/pom.xml 2008-10-08 13:58:13 UTC (rev 8394)
@@ -431,7 +431,7 @@
<properties>
<jboss.version>5.0.0.CR2</jboss.version>
<jbossws.integration.target>jboss500</jbossws.integration.target>
- <endpoint.servlet>org.jboss.wsf.stack.metro.EndpointServlet</endpoint.servlet>
+ <endpoint.servlet>org.jboss.wsf.stack.metro.AspectizedEndpointServlet</endpoint.servlet>
</properties>
<dependencies>
<!-- JBWS-2263 -->
@@ -495,7 +495,7 @@
<properties>
<jboss.version>5.0.0-SNAPSHOT</jboss.version>
<jbossws.integration.target>jboss501</jbossws.integration.target>
- <endpoint.servlet>org.jboss.wsf.stack.metro.EndpointServlet</endpoint.servlet>
+ <endpoint.servlet>org.jboss.wsf.stack.metro.AspectizedEndpointServlet</endpoint.servlet>
</properties>
<dependencies>
<!-- JBWS-2263 -->
17 years, 2 months
JBossWS SVN: r8393 - in stack/cxf/trunk/modules: server/src/main/resources and 2 other directories.
by jbossws-commits@lists.jboss.org
Author: richard.opalka(a)jboss.com
Date: 2008-10-08 09:57:00 -0400 (Wed, 08 Oct 2008)
New Revision: 8393
Modified:
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/CXFServletExt.java
stack/cxf/trunk/modules/server/src/main/resources/as5-jbossws-cxf-config.xml
stack/cxf/trunk/modules/server/src/main/scripts/antrun-beans-config.xml
stack/cxf/trunk/modules/testsuite/pom.xml
Log:
[JBWS-2246][JBWS-2264][JBAS-5732] switch to new AS5 deployment model
Modified: stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/CXFServletExt.java
===================================================================
--- stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/CXFServletExt.java 2008-10-08 13:54:30 UTC (rev 8392)
+++ stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/CXFServletExt.java 2008-10-08 13:57:00 UTC (rev 8393)
@@ -41,6 +41,7 @@
import org.jboss.wsf.spi.SPIProvider;
import org.jboss.wsf.spi.SPIProviderResolver;
import org.jboss.wsf.spi.deployment.Endpoint;
+import org.jboss.wsf.spi.deployment.Endpoint.EndpointState;
import org.jboss.wsf.spi.invocation.EndpointAssociation;
import org.jboss.wsf.spi.invocation.RequestHandler;
import org.jboss.wsf.spi.management.EndpointRegistry;
@@ -80,8 +81,25 @@
endpoint = initServiceEndpoint(contextPath);
context.setAttribute(ServletController.class.getName(), getController());
+ this.startEndpoint();
}
-
+
+ private void startEndpoint()
+ {
+ if (this.endpoint.getState() == EndpointState.CREATED)
+ {
+ this.endpoint.getLifecycleHandler().start(this.endpoint);
+ }
+ }
+
+ private void stopEndpoint()
+ {
+ if (this.endpoint.getState() == EndpointState.STARTED)
+ {
+ this.endpoint.getLifecycleHandler().stop(this.endpoint);
+ }
+ }
+
@Override
public ServletController createServletController(ServletConfig servletConfig)
{
@@ -145,6 +163,7 @@
if (childCtx != null)
childCtx.destroy();
+ this.stopEndpoint();
super.destroy();
}
Modified: stack/cxf/trunk/modules/server/src/main/resources/as5-jbossws-cxf-config.xml
===================================================================
--- stack/cxf/trunk/modules/server/src/main/resources/as5-jbossws-cxf-config.xml 2008-10-08 13:54:30 UTC (rev 8392)
+++ stack/cxf/trunk/modules/server/src/main/resources/as5-jbossws-cxf-config.xml 2008-10-08 13:57:00 UTC (rev 8393)
@@ -49,8 +49,7 @@
<property name="provides">ContextProperties</property>
<property name="contextProperties">
<map keyClass="java.lang.String" valueClass="java.lang.String">
- <entry><key>org.jboss.ws.webapp.ServletClass</key><value>org.jboss.wsf.stack.cxf.AspectizedEndpointServlet</value></entry>
- <entry><key>org.jboss.ws.webapp.ServletAspectManagerName</key><value>WSCXFServletAspectManager</value></entry>
+ <entry><key>org.jboss.ws.webapp.ServletClass</key><value>org.jboss.wsf.stack.cxf.CXFServletExt</value></entry>
</map>
</property>
</bean>
@@ -79,19 +78,7 @@
</property>
</bean>
- <bean name="WSEndpointServletLifecycleDeploymentAspect" class="org.jboss.wsf.framework.deployment.EndpointServletLifecycleDeploymentAspect">
- <property name="requires">LAST_DEPLOYMENT_ASPECT</property>
- </bean>
-
<!--
- The endpoint servlet DA manager
- -->
-
- <bean name="WSCXFServletAspectManager" class="org.jboss.wsf.framework.deployment.DeploymentAspectManagerImpl">
- <property name="name">WSCXFServletAspectManager</property>
- </bean>
-
- <!--
Deployment aspect installers
-->
@@ -122,13 +109,3 @@
</property>
<depends>WSDeploymentAspectInstallerEJB</depends>
</bean>
-
- <bean name="WSCXFServletAspectManagerInstaller" class="org.jboss.wsf.framework.deployment.DeploymentAspectInstaller">
- <property name="manager"><inject bean="WSCXFServletAspectManager"/></property>
- <property name="sortAspectsOnCreate">true</property>
- <property name="aspects">
- <set class="java.util.HashSet" elementClass="org.jboss.wsf.spi.deployment.DeploymentAspect">
- <inject bean="WSEndpointServletLifecycleDeploymentAspect"/>
- </set>
- </property>
- </bean>
Modified: stack/cxf/trunk/modules/server/src/main/scripts/antrun-beans-config.xml
===================================================================
--- stack/cxf/trunk/modules/server/src/main/scripts/antrun-beans-config.xml 2008-10-08 13:54:30 UTC (rev 8392)
+++ stack/cxf/trunk/modules/server/src/main/scripts/antrun-beans-config.xml 2008-10-08 13:57:00 UTC (rev 8393)
@@ -68,7 +68,7 @@
<concat destfile="${project.build.resources.directory}/jbossws-jboss500/jbossws.beans/META-INF/jboss-beans.xml">
<header trimleading="yes">
<deployment xmlns="urn:jboss:bean-deployer:2.0"> </header>
- <fileset file="${project.resources.directory}/as4-jbossws-cxf-config.xml"/>
+ <fileset file="${project.resources.directory}/as5-jbossws-cxf-config.xml"/>
<footer trimleading="yes">
</deployment> </footer>
</concat>
@@ -78,7 +78,7 @@
<concat destfile="${project.build.resources.directory}/jbossws-jboss501/jbossws.beans/META-INF/jboss-beans.xml">
<header trimleading="yes">
<deployment xmlns="urn:jboss:bean-deployer:2.0"> </header>
- <fileset file="${project.resources.directory}/as4-jbossws-cxf-config.xml"/>
+ <fileset file="${project.resources.directory}/as5-jbossws-cxf-config.xml"/>
<footer trimleading="yes">
</deployment> </footer>
</concat>
Modified: stack/cxf/trunk/modules/testsuite/pom.xml
===================================================================
--- stack/cxf/trunk/modules/testsuite/pom.xml 2008-10-08 13:54:30 UTC (rev 8392)
+++ stack/cxf/trunk/modules/testsuite/pom.xml 2008-10-08 13:57:00 UTC (rev 8393)
@@ -253,7 +253,7 @@
<properties>
<jboss.version>4.2.2.GA</jboss.version>
<jbossws.integration.target>jboss422</jbossws.integration.target>
- <endpoint.servlet>org.jboss.wsf.stack.cxf.EndpointServlet</endpoint.servlet>
+ <endpoint.servlet>org.jboss.wsf.stack.cxf.CXFServletExt</endpoint.servlet>
</properties>
<dependencies>
<dependency>
@@ -294,7 +294,7 @@
<properties>
<jboss.version>4.2.3.GA</jboss.version>
<jbossws.integration.target>jboss423</jbossws.integration.target>
- <endpoint.servlet>org.jboss.wsf.stack.cxf.EndpointServlet</endpoint.servlet>
+ <endpoint.servlet>org.jboss.wsf.stack.cxf.CXFServletExt</endpoint.servlet>
</properties>
<dependencies>
<dependency>
@@ -335,7 +335,7 @@
<properties>
<jboss.version>4.2.4-SNAPSHOT</jboss.version>
<jbossws.integration.target>jboss424</jbossws.integration.target>
- <endpoint.servlet>org.jboss.wsf.stack.cxf.EndpointServlet</endpoint.servlet>
+ <endpoint.servlet>org.jboss.wsf.stack.cxf.CXFServletExt</endpoint.servlet>
</properties>
<dependencies>
<dependency>
@@ -376,7 +376,7 @@
<properties>
<jboss.version>5.0.0.CR2</jboss.version>
<jbossws.integration.target>jboss500</jbossws.integration.target>
- <endpoint.servlet>org.jboss.wsf.stack.cxf.EndpointServlet</endpoint.servlet>
+ <endpoint.servlet>org.jboss.wsf.stack.cxf.CXFServletExt</endpoint.servlet>
</properties>
<dependencies>
<!-- [JBWS-2263] -->
@@ -435,7 +435,7 @@
<properties>
<jboss.version>5.0.0-SNAPSHOT</jboss.version>
<jbossws.integration.target>jboss501</jbossws.integration.target>
- <endpoint.servlet>org.jboss.wsf.stack.cxf.EndpointServlet</endpoint.servlet>
+ <endpoint.servlet>org.jboss.wsf.stack.cxf.CXFServletExt</endpoint.servlet>
</properties>
<dependencies>
<!-- [JBWS-2263] -->
17 years, 2 months
JBossWS SVN: r8392 - stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf.
by jbossws-commits@lists.jboss.org
Author: richard.opalka(a)jboss.com
Date: 2008-10-08 09:54:30 -0400 (Wed, 08 Oct 2008)
New Revision: 8392
Removed:
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/AspectizedEndpointServlet.java
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/EndpointServlet.java
Log:
[JBWS-2246][JBWS-2264][JBAS-5732] CXF integration uses CXFServletExt for handling WS requests
Deleted: stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/AspectizedEndpointServlet.java
===================================================================
--- stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/AspectizedEndpointServlet.java 2008-10-08 13:50:40 UTC (rev 8391)
+++ stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/AspectizedEndpointServlet.java 2008-10-08 13:54:30 UTC (rev 8392)
@@ -1,46 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2006, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.wsf.stack.cxf;
-
-import org.jboss.wsf.framework.deployment.AbstractAspectizedEndpointServlet;
-import org.jboss.wsf.spi.management.EndpointResolver;
-
-/**
- * An aspectized CXF endpoint servlet that is installed for every web service endpoint on AS 5.x series
- * @author richard.opalka(a)jboss.com
- */
-public final class AspectizedEndpointServlet extends AbstractAspectizedEndpointServlet
-{
-
- /**
- * Provides CXF specific endpoint resolver
- * @param servletContext servlet context
- * @param servletName servlet name
- * @return new CXF specific endpoint resolver
- */
- @Override
- protected final EndpointResolver newEndpointResolver(String servletContext, String servletName)
- {
- return new WebAppResolver(servletContext, servletName);
- }
-
-}
Deleted: stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/EndpointServlet.java
===================================================================
--- stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/EndpointServlet.java 2008-10-08 13:50:40 UTC (rev 8391)
+++ stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/EndpointServlet.java 2008-10-08 13:54:30 UTC (rev 8392)
@@ -1,48 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2006, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.wsf.stack.cxf;
-
-import org.jboss.wsf.spi.management.EndpointResolver;
-import org.jboss.wsf.framework.deployment.AbstractEndpointServlet;
-
-/**
- * A CXF endpoint servlet that is installed for every web service endpoint on AS 4.2.x series
- * @author thomas.diesler(a)jboss.com
- * @author heiko.braun(a)jboss.com
- * @author richard.opalka(a)jboss.com
- */
-public final class EndpointServlet extends AbstractEndpointServlet
-{
-
- /**
- * Provides CXF specific endpoint resolver
- * @param servletContext servlet context
- * @param servletName servlet name
- * @return new CXF specific endpoint resolver
- */
- @Override
- protected final EndpointResolver newEndpointResolver(String servletContext, String servletName)
- {
- return new WebAppResolver(servletContext, servletName);
- }
-
-}
17 years, 2 months