djencks 2005/04/16 17:15:59
Modified: modules/openejb-builder/src/java/org/openejb/deployment
SessionBuilder.java
Log:
not all session beans are webservices quite yet
Revision Changes Path
1.22 +13 -7
openejb/modules/openejb-builder/src/java/org/openejb/deployment/SessionBuilder.java
Index: SessionBuilder.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/openejb-builder/src/java/org/openejb/deployment/SessionBuilder.java,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- SessionBuilder.java 16 Apr 2005 19:01:54 -0000 1.21
+++ SessionBuilder.java 16 Apr 2005 21:15:59 -0000 1.22
@@ -91,6 +91,7 @@
import org.apache.geronimo.xbeans.j2ee.WebserviceDescriptionType;
import org.apache.geronimo.xbeans.j2ee.WebservicesDocument;
import org.apache.geronimo.xbeans.j2ee.EjbLinkType;
+import org.apache.xmlbeans.XmlException;
import org.openejb.dispatch.InterfaceMethodSignature;
import org.openejb.slsb.HandlerChainConfiguration;
import org.openejb.transaction.TransactionPolicySource;
@@ -267,11 +268,21 @@
private HandlerChainConfiguration
createHandlerChainConfiguration(JarFile moduleFile, String ejbName, ClassLoader
cl) throws DeploymentException {
PortComponentHandlerType[] handlers = null;
+ String webservicesdd;
try {
URL webservicesURL = DeploymentUtil.createJarURL(moduleFile,
"META-INF/webservices.xml");
- WebservicesDocument webservicesDocument =
WebservicesDocument.Factory.parse(webservicesURL);
+ webservicesdd = DeploymentUtil.readAll(webservicesURL);
+ } catch (Exception e) {
+ return null;//no ws dd
+ }
+ WebservicesDocument webservicesDocument = null;
+ try {
+ webservicesDocument =
WebservicesDocument.Factory.parse(webservicesdd);
+ } catch (XmlException e) {
+ throw new DeploymentException("invalid webservicesdd", e);
+ }
- WebserviceDescriptionType[] webserviceDescriptions =
webservicesDocument.getWebservices().getWebserviceDescriptionArray();
+ WebserviceDescriptionType[] webserviceDescriptions =
webservicesDocument.getWebservices().getWebserviceDescriptionArray();
for (int i = 0; i < webserviceDescriptions.length && handlers ==
null; i++) {
PortComponentType[] portComponents =
webserviceDescriptions[i].getPortComponentArray();
@@ -283,11 +294,6 @@
}
}
}
- } catch (MalformedURLException e) {
- throw new DeploymentException("Invalid URL to webservices.xml",
e);
- } catch (Exception e) {
- throw new DeploymentException("Could not read webservices.xml",
e);
- }
if (handlers != null){
List handlerInfos =
WSDescriptorParser.createHandlerInfoList(handlers, cl);