[jboss-cvs] JBossAS SVN: r98082 - trunk/webservices/src/main/java/org/jboss/webservices/integration/metadata.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Dec 21 09:48:44 EST 2009
Author: richard.opalka at jboss.com
Date: 2009-12-21 09:48:43 -0500 (Mon, 21 Dec 2009)
New Revision: 98082
Modified:
trunk/webservices/src/main/java/org/jboss/webservices/integration/metadata/AbstractMetaDataBuilderEJB.java
Log:
[JBWS-2838] fixing TCK6 regression
Modified: trunk/webservices/src/main/java/org/jboss/webservices/integration/metadata/AbstractMetaDataBuilderEJB.java
===================================================================
--- trunk/webservices/src/main/java/org/jboss/webservices/integration/metadata/AbstractMetaDataBuilderEJB.java 2009-12-21 14:47:58 UTC (rev 98081)
+++ trunk/webservices/src/main/java/org/jboss/webservices/integration/metadata/AbstractMetaDataBuilderEJB.java 2009-12-21 14:48:43 UTC (rev 98082)
@@ -21,15 +21,19 @@
*/
package org.jboss.webservices.integration.metadata;
+import java.util.Iterator;
+
import org.jboss.logging.Logger;
import org.jboss.metadata.common.jboss.WebserviceDescriptionMetaData;
import org.jboss.metadata.common.jboss.WebserviceDescriptionsMetaData;
import org.jboss.metadata.ejb.jboss.JBossMetaData;
import org.jboss.metadata.ejb.jboss.WebservicesMetaData;
import org.jboss.webservices.integration.util.ASHelper;
+import org.jboss.ws.Constants;
import org.jboss.wsf.common.integration.WSHelper;
import org.jboss.wsf.spi.deployment.Deployment;
import org.jboss.wsf.spi.metadata.j2ee.EJBArchiveMetaData;
+import org.jboss.wsf.spi.metadata.j2ee.EJBMetaData;
import org.jboss.wsf.spi.metadata.j2ee.PublishLocationAdapter;
/**
@@ -93,10 +97,7 @@
}
// set context root
- final String contextRoot = webservicesMD.getContextRoot();
- ejbArchiveMD.setWebServiceContextRoot(contextRoot);
- this.log.debug("Setting context root: " + contextRoot);
-
+ String contextRoot = webservicesMD.getContextRoot();
final WebserviceDescriptionsMetaData wsDescriptionsMD = webservicesMD.getWebserviceDescriptions();
if (wsDescriptionsMD != null)
@@ -109,6 +110,11 @@
.getWebserviceDescriptionMetaData(wsDescriptionsMD);
if (wsDescriptionMD != null)
{
+ if (!Constants.BC_CONTEXT_MODE && contextRoot == null && !hasContextRoot(ejbArchiveMD))
+ {
+ contextRoot = wsDescriptionMD.getWebserviceDescriptionName(); // TCK6 fallback
+ }
+
final String configName = wsDescriptionMD.getConfigName();
final String configFile = wsDescriptionMD.getConfigFile();
@@ -121,6 +127,29 @@
ejbArchiveMD.setConfigFile(wsDescriptionMD.getConfigFile());
}
}
+
+ ejbArchiveMD.setWebServiceContextRoot(contextRoot);
+ this.log.debug("Setting context root: " + contextRoot);
}
+ /**
+ * Returns true if has context root, false otherwise.
+ *
+ * @param ejbArchiveMD ejb archive MD
+ * @return true if has context root, false otherwise
+ */
+ private boolean hasContextRoot(final EJBArchiveMetaData ejbArchiveMD)
+ {
+ for (final Iterator<EJBMetaData> ejbMDs = ejbArchiveMD.getEnterpriseBeans(); ejbMDs.hasNext(); )
+ {
+ final EJBMetaData ejbMD = ejbMDs.next();
+ if (ejbMD.getPortComponentURI() != null)
+ {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
}
More information about the jboss-cvs-commits
mailing list