[jboss-cvs] JBossAS SVN: r66468 - in projects/metadata/trunk/src: main/java/org/jboss/metadata/javaee/spec and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Oct 25 18:44:57 EDT 2007
Author: scott.stark at jboss.org
Date: 2007-10-25 18:44:57 -0400 (Thu, 25 Oct 2007)
New Revision: 66468
Added:
projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/EjbJar21_testServiceRefs.xml
Modified:
projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossPortComponentRef.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossServiceReferenceMetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossServiceReferencesMetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/PortComponentRef.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ServiceReferenceHandlerChainMetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ServiceReferenceHandlerMetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ServiceReferenceMetaData.java
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss42UnitTestCase.java
projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss42_testServiceRefQname.xml
Log:
Update the service-ref types and merge logic
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossPortComponentRef.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossPortComponentRef.java 2007-10-25 22:28:34 UTC (rev 66467)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossPortComponentRef.java 2007-10-25 22:44:57 UTC (rev 66468)
@@ -21,6 +21,7 @@
*/
package org.jboss.metadata.javaee.jboss;
+import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlElement;
@@ -96,5 +97,33 @@
this.stubProperties = stubProperties;
}
-
+ public JBossPortComponentRef merge(JBossPortComponentRef ref)
+ {
+ JBossPortComponentRef merged = new JBossPortComponentRef();
+ merged.merge(this, ref);
+ return merged;
+ }
+
+ public void merge(JBossPortComponentRef override, JBossPortComponentRef original)
+ {
+ super.merge(override, original);
+ if(override != null && override.portQname != null)
+ portQname = override.portQname;
+ else if(original != null && original.portQname != null)
+ portQname = override.portQname;
+ if(override != null && override.configName != null)
+ configName = override.configName;
+ else if(original != null && original.configName != null)
+ configName = override.configName;
+ if(override != null && override.configFile != null)
+ configFile = override.configFile;
+ else if(original != null && original.configFile != null)
+ configFile = override.configFile;
+ if(stubProperties == null)
+ stubProperties = new ArrayList<StubPropertyMetaData>();
+ if(override != null && override.stubProperties != null)
+ stubProperties.addAll(override.stubProperties);
+ else if(original != null && original.stubProperties != null)
+ stubProperties.addAll(original.stubProperties);
+ }
}
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossServiceReferenceMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossServiceReferenceMetaData.java 2007-10-25 22:28:34 UTC (rev 66467)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossServiceReferenceMetaData.java 2007-10-25 22:44:57 UTC (rev 66468)
@@ -21,11 +21,17 @@
*/
package org.jboss.metadata.javaee.jboss;
+import java.util.ArrayList;
+import java.util.List;
+
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
+import javax.xml.namespace.QName;
+import org.jboss.metadata.javaee.spec.PortComponentRef;
+import org.jboss.metadata.javaee.spec.ServiceReferenceHandlerChainsMetaData;
+import org.jboss.metadata.javaee.spec.ServiceReferenceHandlersMetaData;
import org.jboss.metadata.javaee.spec.ServiceReferenceMetaData;
-import org.jboss.metadata.javaee.spec.ServiceReferenceMetaData;
/**
<xsd:sequence>
@@ -60,7 +66,7 @@
/** The handler-chain */
private String handlerChain;
- private JBossPortComponentRef portComponentRef;
+ private List<JBossPortComponentRef> jbossPortComponentRef;
/** The wsdl file override */
private String wsdlOverride;
@@ -136,14 +142,15 @@
}
- public JBossPortComponentRef getPortComponentRef()
+ public List<? extends PortComponentRef> getJBossPortComponentRef()
{
- return portComponentRef;
+ return jbossPortComponentRef;
}
- public void setPortComponentRef(JBossPortComponentRef portComponentRef)
+ @XmlElement(name="port-component-ref", type=JBossPortComponentRef.class)
+ public void setJBossPortComponentRef(List<? extends PortComponentRef> portComponentRef)
{
- this.portComponentRef = portComponentRef;
+ this.jbossPortComponentRef = (List<JBossPortComponentRef>) portComponentRef;
}
public String getWsdlOverride()
@@ -156,6 +163,12 @@
this.wsdlOverride = wsdlOverride;
}
+ public ServiceReferenceMetaData merge(ServiceReferenceMetaData original)
+ {
+ JBossServiceReferenceMetaData merged = new JBossServiceReferenceMetaData();
+ merged.merge(this, original);
+ return merged;
+ }
public JBossServiceReferenceMetaData merge(JBossServiceReferenceMetaData original)
{
JBossServiceReferenceMetaData merged = new JBossServiceReferenceMetaData();
@@ -168,44 +181,45 @@
* @param override data which overrides original
* @param original the original data
*/
- public void merge(JBossServiceReferenceMetaData override, JBossServiceReferenceMetaData original)
+ public void merge(JBossServiceReferenceMetaData override, ServiceReferenceMetaData original)
{
ServiceReferenceMetaData sr0 = override;
ServiceReferenceMetaData sr1 = original;
super.merge(sr0, sr1);
- /* TODO
- if (override != null && override.serviceClass != null)
- this.serviceClass = override.serviceClass;
- else if (original.serviceInterface != null)
- setServiceInterface(original.serviceInterface);
- if(override != null && override.serviceRefType != null)
- setServiceRefType(override.serviceRefType);
- else if (original.serviceRefType != null)
- setServiceRefType(original.serviceRefType);
- if(override != null && override.wsdlFile != null)
- setWsdlFile(override.wsdlFile);
- else if (original.wsdlFile != null)
- setWsdlFile(original.wsdlFile);
- if(override != null && override.jaxrpcMappingFile != null)
- setJaxrpcMappingFile(override.jaxrpcMappingFile);
- else if (original.jaxrpcMappingFile != null)
- setJaxrpcMappingFile(original.jaxrpcMappingFile);
- if(override != null && override.serviceQname != null)
- setServiceQname(override.serviceQname);
- else if (original.serviceQname != null)
- setServiceQname(original.serviceQname);
- if(override != null && override.portComponentRef != null)
- setPortComponentRef(override.portComponentRef);
- else if (original.portComponentRef != null)
- setPortComponentRef(original.portComponentRef);
- if(override != null && override.handlers != null)
- setHandlers(override.handlers);
- else if (original.handlers != null)
- setHandlers(original.handlers);
- if(override != null && override.handlerChains != null)
- setHandlerChains(override.handlerChains);
- else if (original.handlers != null)
- setHandlerChains(original.handlerChains);
- */
+
+ // TODO: how to merge portComponentRef
+ if(override != null && override.getPortComponentRef() != null)
+ {
+ if(jbossPortComponentRef == null)
+ jbossPortComponentRef = new ArrayList<JBossPortComponentRef>();
+ for(PortComponentRef ref : override.getPortComponentRef())
+ {
+ JBossPortComponentRef jref = new JBossPortComponentRef();
+ jref.merge(null, ref);
+ jbossPortComponentRef.add(jref);
+ }
+ }
+ if(original != null && original.getPortComponentRef() != null)
+ {
+ if(jbossPortComponentRef == null)
+ jbossPortComponentRef = new ArrayList<JBossPortComponentRef>();
+ for(PortComponentRef ref : original.getPortComponentRef())
+ {
+ JBossPortComponentRef jref = new JBossPortComponentRef();
+ jref.merge(null, ref);
+ jbossPortComponentRef.add(jref);
+ }
+ }
+
+ if(override != null && override.getServiceClass() != null)
+ setServiceClass(override.getServiceClass());
+ if(override != null && override.getConfigName() != null)
+ setConfigName(override.getConfigName());
+ if(override != null && override.getConfigFile() != null)
+ setConfigFile(override.getConfigFile());
+ if(override != null && override.getHandlerChain() != null)
+ setHandlerChain(override.getHandlerChain());
+ if(override != null && override.getWsdlOverride() != null)
+ setWsdlOverride(override.getWsdlOverride());
}
}
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossServiceReferencesMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossServiceReferencesMetaData.java 2007-10-25 22:28:34 UTC (rev 66467)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossServiceReferencesMetaData.java 2007-10-25 22:44:57 UTC (rev 66468)
@@ -23,11 +23,9 @@
import javax.xml.bind.annotation.XmlType;
+import org.jboss.metadata.javaee.spec.EJBLocalReferencesMetaData;
import org.jboss.metadata.javaee.spec.ServiceReferenceMetaData;
import org.jboss.metadata.javaee.spec.ServiceReferencesMetaData;
-import org.jboss.metadata.javaee.spec.ServiceReferenceMetaData;
-import org.jboss.metadata.javaee.spec.ServiceReferencesMetaData;
-import org.jboss.metadata.javaee.support.AbstractMappedMetaData;
import org.jboss.metadata.javaee.support.JavaEEMetaDataUtil;
/**
@@ -57,35 +55,14 @@
* @param overrideFile the override file
* @return the merged referencees
*/
- public static JBossServiceReferencesMetaData merge(JBossServiceReferencesMetaData override, ServiceReferencesMetaData overriden, String overridenFile, String overrideFile)
+ public static JBossServiceReferencesMetaData merge(ServiceReferencesMetaData override,
+ ServiceReferencesMetaData overriden, String overridenFile, String overrideFile)
{
if (override == null && overriden == null)
return null;
-
+
JBossServiceReferencesMetaData merged = new JBossServiceReferencesMetaData();
- if(override != null)
- {
- for(ServiceReferenceMetaData ref : override)
- {
- JBossServiceReferenceMetaData jref = (JBossServiceReferenceMetaData) ref;
- if(overriden != null)
- {
- ServiceReferenceMetaData sref = overriden.get(ref.getServiceRefName());
- if(sref != null)
- jref.merge(null, sref);
- }
- merged.add(jref);
- }
- }
- else if(overriden != null)
- {
- for(ServiceReferenceMetaData ref : overriden)
- {
- JBossServiceReferenceMetaData jref = new JBossServiceReferenceMetaData();
- jref.merge(null, ref);
- merged.add(jref);
- }
- }
+ JavaEEMetaDataUtil.merge(merged, overriden, override, "service-ref", overridenFile, overrideFile, false);
return merged;
}
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/PortComponentRef.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/PortComponentRef.java 2007-10-25 22:28:34 UTC (rev 66467)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/PortComponentRef.java 2007-10-25 22:44:57 UTC (rev 66468)
@@ -65,4 +65,26 @@
{
this.serviceEndpointInterface = serviceEndpointInterface;
}
+
+ public PortComponentRef merge(PortComponentRef ref)
+ {
+ PortComponentRef merged = new PortComponentRef();
+ merged.merge(this, ref);
+ return merged;
+ }
+ public void merge(PortComponentRef override, PortComponentRef original)
+ {
+ if(override != null && override.serviceEndpointInterface != null)
+ serviceEndpointInterface = override.serviceEndpointInterface;
+ else if(original != null && original.serviceEndpointInterface != null)
+ serviceEndpointInterface = original.serviceEndpointInterface;
+ if(override != null && override.portComponentLink != null)
+ portComponentLink = override.portComponentLink;
+ else if(original != null && original.portComponentLink != null)
+ portComponentLink = original.portComponentLink;
+ if(override != null && override.enableMtom)
+ enableMtom = override.enableMtom;
+ else if(original != null && original.enableMtom)
+ enableMtom = original.enableMtom;
+ }
}
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ServiceReferenceHandlerChainMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ServiceReferenceHandlerChainMetaData.java 2007-10-25 22:28:34 UTC (rev 66467)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ServiceReferenceHandlerChainMetaData.java 2007-10-25 22:44:57 UTC (rev 66468)
@@ -24,6 +24,7 @@
import java.util.List;
import javax.xml.bind.annotation.XmlType;
+import javax.xml.namespace.QName;
import org.jboss.metadata.javaee.support.IdMetaDataImpl;
@@ -32,9 +33,9 @@
* ServiceReferenceHandlerChainMetaData.
*
* @author <a href="adrian at jboss.com">Adrian Brock</a>
+ * @author Scott.Stark at jboss.org
* @version $Revision: 1.1 $
*/
-//@SchemaType(name="service-ref_handler-chainType", mandatory=false)
@XmlType(name="service-ref_handler-chainType")
public class ServiceReferenceHandlerChainMetaData
extends IdMetaDataImpl
@@ -42,11 +43,11 @@
/** The serialVersionUID */
private static final long serialVersionUID = 1;
- private String serviceNamePattern;
+ private QName serviceNamePattern;
- private String portNamePattern;
+ private QName portNamePattern;
- // TODO protocol-bindings
+ private String protocolBindings;
/** The handlers */
private List<ServiceReferenceHandlerMetaData> handlers;
@@ -59,30 +60,33 @@
// For serialization
}
-
- public String getPortNamePattern()
+ public QName getPortNamePattern()
{
return portNamePattern;
}
-
- public void setPortNamePattern(String portNamePattern)
+ public void setPortNamePattern(QName portNamePattern)
{
this.portNamePattern = portNamePattern;
}
+ public String getProtocolBindings()
+ {
+ return protocolBindings;
+ }
+ public void setProtocolBindings(String protocolBindings)
+ {
+ this.protocolBindings = protocolBindings;
+ }
- public String getServiceNamePattern()
+ public QName getServiceNamePattern()
{
return serviceNamePattern;
}
-
-
- public void setServiceNamePattern(String serviceNamePatter)
+ public void setServiceNamePattern(QName serviceNamePattern)
{
- this.serviceNamePattern = serviceNamePatter;
+ this.serviceNamePattern = serviceNamePattern;
}
-
public List<ServiceReferenceHandlerMetaData> getHandler()
{
return handlers;
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ServiceReferenceHandlerMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ServiceReferenceHandlerMetaData.java 2007-10-25 22:28:34 UTC (rev 66467)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ServiceReferenceHandlerMetaData.java 2007-10-25 22:44:57 UTC (rev 66468)
@@ -24,6 +24,7 @@
import java.util.List;
import javax.xml.bind.annotation.XmlType;
+import javax.xml.namespace.QName;
import org.jboss.metadata.javaee.support.NamedMetaDataWithDescriptionGroup;
@@ -53,7 +54,7 @@
private List<ParamValueMetaData> initParam;
- private List<String> soapHeader;
+ private List<QName> soapHeader;
private List<String> soapRole;
@@ -130,12 +131,12 @@
this.portName = portName;
}
- public List<String> getSoapHeader()
+ public List<QName> getSoapHeader()
{
return soapHeader;
}
- public void setSoapHeader(List<String> soapHeader)
+ public void setSoapHeader(List<QName> soapHeader)
{
this.soapHeader = soapHeader;
}
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ServiceReferenceMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ServiceReferenceMetaData.java 2007-10-25 22:28:34 UTC (rev 66467)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/spec/ServiceReferenceMetaData.java 2007-10-25 22:44:57 UTC (rev 66468)
@@ -21,6 +21,8 @@
*/
package org.jboss.metadata.javaee.spec;
+import java.util.List;
+
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.namespace.QName;
@@ -58,7 +60,7 @@
private QName serviceQname;
/** The port-component-ref */
- private PortComponentRef portComponentRef;
+ private List<PortComponentRef> portComponentRef;
/** The handlers */
private ServiceReferenceHandlersMetaData handlers;
@@ -268,14 +270,15 @@
}
- public PortComponentRef getPortComponentRef()
+ public List<? extends PortComponentRef> getPortComponentRef()
{
return portComponentRef;
}
- public void setPortComponentRef(PortComponentRef portComponentRef)
+ @XmlElement(name="port-component-ref", type=PortComponentRef.class)
+ public void setPortComponentRef(List<? extends PortComponentRef> portComponentRef)
{
- this.portComponentRef = portComponentRef;
+ this.portComponentRef = (List<PortComponentRef>) portComponentRef;
}
/**
Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss42UnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss42UnitTestCase.java 2007-10-25 22:28:34 UTC (rev 66467)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss42UnitTestCase.java 2007-10-25 22:44:57 UTC (rev 66468)
@@ -34,10 +34,12 @@
import org.jboss.metadata.ejb.jboss.WebservicesMetaData;
import org.jboss.metadata.ejb.spec.EjbJar20MetaData;
import org.jboss.metadata.ejb.spec.EjbJar21MetaData;
+import org.jboss.metadata.ejb.spec.EjbJarMetaData;
import org.jboss.metadata.javaee.jboss.JBossPortComponentRef;
import org.jboss.metadata.javaee.jboss.JBossServiceReferenceMetaData;
import org.jboss.metadata.javaee.jboss.JBossServiceReferencesMetaData;
import org.jboss.metadata.javaee.jboss.StubPropertyMetaData;
+import org.jboss.metadata.javaee.spec.PortComponentRef;
import org.jboss.metadata.javaee.spec.ServiceReferenceMetaData;
import org.jboss.metadata.javaee.spec.ServiceReferencesMetaData;
import org.jboss.test.metadata.javaee.AbstractJavaEEMetaDataTest;
@@ -95,28 +97,52 @@
{
// JBossXBTestDelegate xbdelegate = (JBossXBTestDelegate) super.getDelegate();
// xbdelegate.setValidateSchema(false);
-
+
JBossMetaData result = unmarshal();
assertEquals(1, result.getEnterpriseBeans().size());
JBossEnterpriseBeanMetaData bean = (JBossEnterpriseBeanMetaData) result.getEnterpriseBean("WebserviceConsumer");
assertNotNull(bean);
ServiceReferencesMetaData refs = bean.getServiceReferences();
- assertEquals(3, refs.size());
+ assertEquals(11, refs.size());
+
assertTrue(refs instanceof JBossServiceReferencesMetaData);
ServiceReferenceMetaData OrganizationService = refs.get("OrganizationService");
+ assertNotNull(OrganizationService);
+ ServiceReferenceMetaData SecureOrganizationService = refs.get("SecureOrganizationService");
+ assertNotNull(SecureOrganizationService);
+ ServiceReferenceMetaData SecureService = refs.get("SecureService");
+ assertNotNull(SecureService);
+ ServiceReferenceMetaData Service1 = refs.get("Service1");
+ assertNotNull(Service1);
+ ServiceReferenceMetaData Service2 = refs.get("Service2");
+ assertNotNull(Service2);
+ ServiceReferenceMetaData Service3 = refs.get("Service3");
+ assertNotNull(Service3);
+ ServiceReferenceMetaData Service4 = refs.get("Service4");
+ assertNotNull(Service4);
+ ServiceReferenceMetaData Port1 = refs.get("Port1");
+ assertNotNull(Port1);
+ ServiceReferenceMetaData Port2 = refs.get("Port2");
+ assertNotNull(Port2);
+ ServiceReferenceMetaData Port3 = refs.get("Port3");
+ assertNotNull(Port3);
+ ServiceReferenceMetaData session0ServiceRef0 = refs.get("session0ServiceRef0");
+ assertNotNull(session0ServiceRef0);
+
assertEquals("OrganizationService", OrganizationService.getServiceRefName());
assertTrue(OrganizationService instanceof JBossServiceReferenceMetaData);
JBossServiceReferenceMetaData jOrganizationService = (JBossServiceReferenceMetaData) OrganizationService;
assertEquals("file:/wsdlRepository/organization-service.wsdl", jOrganizationService.getWsdlOverride());
- JBossServiceReferenceMetaData SecureService = (JBossServiceReferenceMetaData) refs.get("SecureService");
- assertNotNull(SecureService);
+ JBossServiceReferenceMetaData jSecureService = (JBossServiceReferenceMetaData) SecureService;
assertEquals("SecureService", SecureService.getServiceRefName());
- assertEquals("org.jboss.tests.ws.jaxws.webserviceref.SecureEndpointService", SecureService.getServiceClass());
+ assertEquals("org.jboss.tests.ws.jaxws.webserviceref.SecureEndpointService", jSecureService.getServiceClass());
QName name = new QName("http://org.jboss.ws/wsref", "SecureEndpointService");
assertEquals(name, SecureService.getServiceQname());
- JBossPortComponentRef pcref = SecureService.getPortComponentRef();
+ List<? extends PortComponentRef> pcrefs = SecureService.getPortComponentRef();
+ assertEquals(1, pcrefs.size());
+ JBossPortComponentRef pcref = (JBossPortComponentRef) pcrefs.get(0);
assertNotNull(pcref);
assertEquals("org.jboss.tests.ws.jaxws.webserviceref.SecureEndpoint", pcref.getServiceEndpointInterface());
name = new QName("http://org.jboss.ws/wsref", "SecureEndpointPort");
@@ -127,8 +153,48 @@
assertEquals("kermit", pcrefProps.get(0).getPropValue());
assertEquals("javax.xml.ws.security.auth.password", pcrefProps.get(1).getPropName());
assertEquals("thefrog", pcrefProps.get(1).getPropValue());
+
+ JBossServiceReferenceMetaData jsession0ServiceRef0 = (JBossServiceReferenceMetaData) session0ServiceRef0;
+ assertEquals("session0ServiceRef0", session0ServiceRef0.getServiceRefName());
+ assertEquals("session0ServiceImplClass", jsession0ServiceRef0.getServiceClass());
+ List<? extends PortComponentRef> session0Pcrefs = session0ServiceRef0.getPortComponentRef();
+ assertEquals(1, session0Pcrefs.size());
+ JBossPortComponentRef session0Pcref = (JBossPortComponentRef) session0Pcrefs.get(0);
+ assertNotNull(session0Pcref);
+ assertEquals("session0Endpoint", session0Pcref.getServiceEndpointInterface());
+ QName portName = new QName("session0", "portRef0");
+ assertEquals(portName, session0Pcref.getPortQname());
}
+ public void testMergedServiceRefQname() throws Exception
+ {
+ EjbJarMetaData specResult = unmarshal("EjbJar21_testServiceRefs.xml", EjbJarMetaData.class, null);
+ JBossMetaData result = unmarshal("JBoss42_testServiceRefQname.xml", JBossMetaData.class, null);
+ JBossMetaData merged = new JBossMetaData();
+ merged.merge(result, specResult);
+ assertEquals(1, merged.getEnterpriseBeans().size());
+ JBossEnterpriseBeanMetaData bean = (JBossEnterpriseBeanMetaData) merged.getEnterpriseBean("WebserviceConsumer");
+ assertNotNull(bean);
+ ServiceReferencesMetaData refs = bean.getServiceReferences();
+ assertEquals(11, refs.size());
+
+ ServiceReferenceMetaData session0ServiceRef0 = refs.get("session0ServiceRef0");
+ assertNotNull(session0ServiceRef0);
+ JBossServiceReferenceMetaData jsession0ServiceRef0 = (JBossServiceReferenceMetaData) session0ServiceRef0;
+ assertEquals("session0ServiceRef0", session0ServiceRef0.getServiceRefName());
+ assertEquals("javax.xml.rpc.Service", session0ServiceRef0.getServiceInterface());
+ assertEquals("session0ServiceImplClass", jsession0ServiceRef0.getServiceClass());
+ QName service0Name = new QName("http://x.y.z", "serviceRef0Name");
+ assertEquals(service0Name, session0ServiceRef0.getServiceQname());
+ List<? extends PortComponentRef> session0Pcrefs = session0ServiceRef0.getPortComponentRef();
+ assertEquals(1, session0Pcrefs.size());
+ JBossPortComponentRef session0Pcref = (JBossPortComponentRef) session0Pcrefs.get(0);
+ assertNotNull(session0Pcref);
+ assertEquals("session0Endpoint", session0Pcref.getServiceEndpointInterface());
+ QName portName = new QName("session0", "portRef0");
+ assertEquals(portName, session0Pcref.getPortQname());
+ }
+
public void testNoDoctype()
throws Exception
{
Added: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/EjbJar21_testServiceRefs.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/EjbJar21_testServiceRefs.xml (rev 0)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/EjbJar21_testServiceRefs.xml 2007-10-25 22:44:57 UTC (rev 66468)
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"
+ version="2.1">
+ <description></description>
+ <enterprise-beans>
+ <session>
+ <ejb-name>WebserviceConsumer</ejb-name>
+ <ejb-class>session0Class</ejb-class>
+ <session-type>Stateless</session-type>
+ <transaction-type>Container</transaction-type>
+ <service-ref>
+ <service-ref-name>session0ServiceRef0</service-ref-name>
+ <service-interface>javax.xml.rpc.Service</service-interface>
+ <wsdl-file>META-INF/wsdl/TestEndpoint.wsdl</wsdl-file>
+ <jaxrpc-mapping-file>META-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file>
+ <service-qname xmlns:session0="http://x.y.z">session0:serviceRef0Name</service-qname>
+ <handler id="Handler0-id"
+ xmlns:soap-header_ns__="http://extra-header.org">
+ <handler-name>Handler0</handler-name>
+ <handler-class>org.jboss.test.ws.jaxrpc.serviceref.ExampleHandler</handler-class>
+ <soap-header>soap-header_ns__:extra-header0</soap-header>
+ <soap-header>soap-header_ns__:extra-header1</soap-header>
+ <soap-role>Handler0SoapRole0</soap-role>
+ <soap-role>Handler0SoapRole1</soap-role>
+ <port-name>Handler0Port0</port-name>
+ <port-name>Handler0Port1</port-name>
+ </handler>
+ </service-ref>
+ </session>
+ </enterprise-beans>
+</ejb-jar>
+
Property changes on: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/EjbJar21_testServiceRefs.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ native
Modified: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss42_testServiceRefQname.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss42_testServiceRefQname.xml 2007-10-25 22:28:34 UTC (rev 66467)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss42_testServiceRefQname.xml 2007-10-25 22:44:57 UTC (rev 66468)
@@ -37,6 +37,110 @@
</stub-property>
</port-component-ref>
</service-ref>
+
+ <!--
+ @WebServiceRef(name = "Service1")
+ -->
+ <service-ref>
+ <service-ref-name>Service1</service-ref-name>
+ <service-impl-class>org.jboss.test.ws.jaxws.webserviceref.TestEndpointService</service-impl-class>
+ <service-qname>{http://org.jboss.ws/wsref}TestEndpointService</service-qname>
+ <wsdl-override>META-INF/wsdl/TestEndpoint.wsdl</wsdl-override>
+ </service-ref>
+
+ <!--
+ @WebServiceRef(name = "Service2")
+ -->
+ <service-ref>
+ <service-ref-name>Service2</service-ref-name>
+ <config-name>Custom Client</config-name>
+ <config-file>META-INF/jbossws-client-config.xml</config-file>
+ <wsdl-override>META-INF/wsdl/TestEndpoint.wsdl</wsdl-override>
+ </service-ref>
+
+ <!--
+ @WebServiceRef(name = "Service3")
+ -->
+ <service-ref>
+ <service-ref-name>Service3</service-ref-name>
+ <service-impl-class>org.jboss.test.ws.jaxws.webserviceref.TestEndpointService</service-impl-class>
+ <service-qname>{http://org.jboss.ws/wsref}TestEndpointService</service-qname>
+ <wsdl-override>META-INF/wsdl/TestEndpoint.wsdl</wsdl-override>
+ </service-ref>
+
+ <!--
+ @WebServiceRef(name = "Service4")
+ -->
+ <service-ref>
+ <service-ref-name>Service4</service-ref-name>
+ <port-component-ref>
+ <service-endpoint-interface>org.jboss.test.ws.jaxws.webserviceref.TestEndpoint</service-endpoint-interface>
+ <config-name>Custom Client</config-name>
+ <config-file>META-INF/jbossws-client-config.xml</config-file>
+ </port-component-ref>
+ <wsdl-override>META-INF/wsdl/TestEndpoint.wsdl</wsdl-override>
+ </service-ref>
+
+ <!--
+ @WebServiceRef(name = "Port1", type = TestEndpoint.class)
+ -->
+ <service-ref>
+ <service-ref-name>Port1</service-ref-name>
+ <port-component-ref>
+ <port-qname>{http://org.jboss.ws/wsref}TestEndpointPort</port-qname>
+ <config-name>Custom Client</config-name>
+ <config-file>META-INF/jbossws-client-config.xml</config-file>
+ </port-component-ref>
+ <wsdl-override>META-INF/wsdl/TestEndpoint.wsdl</wsdl-override>
+ </service-ref>
+
+ <!--
+ @WebServiceRef(name = "Port2")
+ -->
+ <service-ref>
+ <service-ref-name>Port2</service-ref-name>
+ <port-component-ref>
+ <service-endpoint-interface>org.jboss.test.ws.jaxws.webserviceref.TestEndpoint</service-endpoint-interface>
+ <config-name>Custom Client</config-name>
+ <config-file>META-INF/jbossws-client-config.xml</config-file>
+ </port-component-ref>
+ <wsdl-override>META-INF/wsdl/TestEndpoint.wsdl</wsdl-override>
+ </service-ref>
+
+ <!--
+ @WebServiceRef(name = "Port3")
+ -->
+ <service-ref>
+ <service-ref-name>Port3</service-ref-name>
+ <port-component-ref>
+ <service-endpoint-interface>org.jboss.test.ws.jaxws.webserviceref.TestEndpoint</service-endpoint-interface>
+ <port-qname>{http://org.jboss.ws/wsref}TestEndpointPort</port-qname>
+ <stub-property>
+ <prop-name>javax.xml.ws.security.auth.username</prop-name>
+ <prop-value>kermit</prop-value>
+ </stub-property>
+ <stub-property>
+ <prop-name>javax.xml.ws.security.auth.password</prop-name>
+ <prop-value>thefrog</prop-value>
+ </stub-property>
+ </port-component-ref>
+ <wsdl-override>META-INF/wsdl/TestEndpoint.wsdl</wsdl-override>
+ </service-ref>
+
+ <service-ref>
+ <service-ref-name>session0ServiceRef0</service-ref-name>
+ <service-impl-class>session0ServiceImplClass</service-impl-class>
+ <config-name>session0Config</config-name>
+ <config-file>META-INF/session0-config.xml</config-file>
+ <handler-chain>META-INF/session0-handlers.xml</handler-chain>
+ <port-component-ref>
+ <service-endpoint-interface>session0Endpoint</service-endpoint-interface>
+ <port-qname>{session0}portRef0</port-qname>
+ <config-name>session0PortRef0Config</config-name>
+ <config-file>META-INF/session0PortRef0-config.xml</config-file>
+ </port-component-ref>
+ <wsdl-override>META-INF/wsdl/session0.wsdl</wsdl-override>
+ </service-ref>
</session>
</enterprise-beans>
</jboss>
More information about the jboss-cvs-commits
mailing list