Return-Path: Delivered-To: apmail-geronimo-scm-archive@www.apache.org Received: (qmail 3201 invoked from network); 20 May 2005 19:53:36 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 20 May 2005 19:53:36 -0000 Received: (qmail 66273 invoked by uid 500); 20 May 2005 19:53:35 -0000 Delivered-To: apmail-geronimo-scm-archive@geronimo.apache.org Received: (qmail 66211 invoked by uid 500); 20 May 2005 19:53:34 -0000 Mailing-List: contact scm-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list scm@geronimo.apache.org Received: (qmail 66195 invoked by uid 99); 20 May 2005 19:53:34 -0000 X-ASF-Spam-Status: No, hits=-9.8 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from minotaur.apache.org (HELO minotaur.apache.org) (209.237.227.194) by apache.org (qpsmtpd/0.28) with SMTP; Fri, 20 May 2005 12:53:27 -0700 Received: (qmail 3165 invoked by uid 65534); 20 May 2005 19:53:20 -0000 Message-ID: <20050520195320.3164.qmail@minotaur.apache.org> Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Subject: svn commit: r171145 - in /geronimo/trunk/modules: axis-builder/src/java/org/apache/geronimo/axis/builder/ axis-builder/src/test/org/apache/geronimo/axis/builder/ connector-builder/src/test/org/apache/geronimo/connector/deployment/ j2ee-builder/src/java/org/apache/geronimo/j2ee/deployment/ j2ee-builder/src/test/org/apache/geronimo/j2ee/deployment/ jetty-builder/src/test/org/apache/geronimo/jetty/deployment/ naming-builder/src/java/org/apache/geronimo/naming/deployment/ naming-builder/src/schema/ Date: Fri, 20 May 2005 19:53:18 -0000 To: scm@geronimo.apache.org From: djencks@apache.org X-Mailer: svnmailer-1.0.0-dev X-Virus-Checked: Checked X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: djencks Date: Fri May 20 12:53:16 2005 New Revision: 171145 URL: http://svn.apache.org/viewcvs?rev=3D171145&view=3Drev Log: GERONIMO-649 deploy partial wsdl webservices Modified: geronimo/trunk/modules/axis-builder/src/java/org/apache/geronimo/axis/b= uilder/AxisBuilder.java geronimo/trunk/modules/axis-builder/src/test/org/apache/geronimo/axis/b= uilder/ServiceReferenceTest.java geronimo/trunk/modules/connector-builder/src/test/org/apache/geronimo/c= onnector/deployment/ConnectorModuleBuilderTest.java geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/d= eployment/RefContext.java geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/d= eployment/ServiceReferenceBuilder.java geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/d= eployment/UnavailableServiceReferenceBuilder.java geronimo/trunk/modules/j2ee-builder/src/test/org/apache/geronimo/j2ee/d= eployment/EARConfigBuilderTest.java geronimo/trunk/modules/j2ee-builder/src/test/org/apache/geronimo/j2ee/d= eployment/EJBRefContextTest.java geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty= /deployment/JettyModuleBuilderTest.java geronimo/trunk/modules/naming-builder/src/java/org/apache/geronimo/nami= ng/deployment/ENCConfigBuilder.java geronimo/trunk/modules/naming-builder/src/schema/geronimo-naming.xsd Modified: geronimo/trunk/modules/axis-builder/src/java/org/apache/geronimo/= axis/builder/AxisBuilder.java URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/axis-builder/src/= java/org/apache/geronimo/axis/builder/AxisBuilder.java?rev=3D171145&r1=3D17= 1144&r2=3D171145&view=3Ddiff =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- geronimo/trunk/modules/axis-builder/src/java/org/apache/geronimo/axis/b= uilder/AxisBuilder.java (original) +++ geronimo/trunk/modules/axis-builder/src/java/org/apache/geronimo/axis/b= uilder/AxisBuilder.java Fri May 20 12:53:16 2005 @@ -89,6 +89,10 @@ import org.apache.geronimo.xbeans.j2ee.JavaXmlTypeMappingType; import org.apache.geronimo.xbeans.j2ee.ServiceEndpointInterfaceMappingType; import org.apache.geronimo.xbeans.j2ee.ServiceEndpointMethodMappingType; +import org.apache.geronimo.xbeans.geronimo.naming.GerServiceRefType; +import org.apache.geronimo.xbeans.geronimo.naming.GerServiceCompletionType; +import org.apache.geronimo.xbeans.geronimo.naming.GerPortCompletionType; +import org.apache.geronimo.xbeans.geronimo.naming.GerPortType; =20 /** * @version $Rev: $ $Date: $ @@ -160,7 +164,8 @@ =20 =20 //ServicereferenceBuilder - public Object createService(Class serviceInterface, URI wsdlURI, URI j= axrpcMappingURI, QName serviceQName, Map portComponentRefMap, List handlerI= nfos, Map portLocationMap, Map credentialsNameMap, DeploymentContext deploy= mentContext, Module module, ClassLoader classLoader) throws DeploymentExcep= tion { + public Object createService(Class serviceInterface, URI wsdlURI, URI j= axrpcMappingURI, QName serviceQName, Map portComponentRefMap, List handlerI= nfos, Object serviceRefType, DeploymentContext deploymentContext, Module mo= dule, ClassLoader classLoader) throws DeploymentException { + GerServiceRefType gerServiceRefType =3D (GerServiceRefType) servic= eRefType; JarFile moduleFile =3D module.getModuleFile(); SchemaInfoBuilder schemaInfoBuilder =3D null; JavaWsdlMappingType mapping =3D null; @@ -170,7 +175,7 @@ mapping =3D WSDescriptorParser.readJaxrpcMapping(moduleFile, j= axrpcMappingURI); } =20 - Object service =3D createService(serviceInterface, schemaInfoBuild= er, mapping, serviceQName, SOAP_VERSION, handlerInfos, portLocationMap, cre= dentialsNameMap, deploymentContext, module, classLoader); + Object service =3D createService(serviceInterface, schemaInfoBuild= er, mapping, serviceQName, SOAP_VERSION, handlerInfos, gerServiceRefType, d= eploymentContext, module, classLoader); ByteArrayOutputStream baos =3D new ByteArrayOutputStream(); ObjectOutputStream oos =3D null; try { @@ -185,12 +190,12 @@ return reference; } =20 - public Object createService(Class serviceInterface, SchemaInfoBuilder = schemaInfoBuilder, JavaWsdlMappingType mapping, QName serviceQName, SOAPCon= stants soapVersion, List handlerInfos, Map portLocationMap, Map credentials= NameMap, DeploymentContext context, Module module, ClassLoader classloader)= throws DeploymentException { + public Object createService(Class serviceInterface, SchemaInfoBuilder = schemaInfoBuilder, JavaWsdlMappingType mapping, QName serviceQName, SOAPCon= stants soapVersion, List handlerInfos, GerServiceRefType serviceRefType, De= ploymentContext context, Module module, ClassLoader classloader) throws Dep= loymentException { Map seiPortNameToFactoryMap =3D new HashMap(); Map seiClassNameToFactoryMap =3D new HashMap(); Object serviceInstance =3D createServiceInterfaceProxy(serviceInte= rface, seiPortNameToFactoryMap, seiClassNameToFactoryMap, context, module, = classloader); if (schemaInfoBuilder !=3D null) { - buildSEIFactoryMap(serviceInterface, schemaInfoBuilder, portLo= cationMap, credentialsNameMap, mapping, handlerInfos, serviceQName, soapVer= sion, seiPortNameToFactoryMap, seiClassNameToFactoryMap, serviceInstance, c= ontext, module, classloader); + buildSEIFactoryMap(serviceInterface, schemaInfoBuilder, servic= eRefType, mapping, handlerInfos, serviceQName, soapVersion, seiPortNameToFa= ctoryMap, seiClassNameToFactoryMap, serviceInstance, context, module, class= loader); } return serviceInstance; } @@ -227,44 +232,105 @@ } } =20 - public void buildSEIFactoryMap(Class serviceInterface, SchemaInfoBuild= er schemaInfoBuilder, Map portLocationMap, Map credentialsNameMap, JavaWsdl= MappingType mapping, List handlerInfos, QName serviceQName, SOAPConstants s= oapVersion, Map seiPortNameToFactoryMap, Map seiClassNameToFactoryMap, Obje= ct serviceImpl, DeploymentContext context, Module module, ClassLoader class= Loader) throws DeploymentException { + public void buildSEIFactoryMap(Class serviceInterface, SchemaInfoBuild= er schemaInfoBuilder, GerServiceRefType serviceRefType, JavaWsdlMappingType= mapping, List handlerInfos, QName serviceQName, SOAPConstants soapVersion,= Map seiPortNameToFactoryMap, Map seiClassNameToFactoryMap, Object serviceI= mpl, DeploymentContext context, Module module, ClassLoader classLoader) thr= ows DeploymentException { + Map exceptionMap =3D WSDescriptorParser.getExceptionMap(mapping); =20 - //find the service we are working with - javax.wsdl.Service service =3D getService(serviceQName, schemaInfo= Builder.getDefinition()); + Definition definition =3D schemaInfoBuilder.getDefinition(); + //check for consistency + if (definition.getServices().size() =3D=3D 0) { + //partial wsdl + if (serviceRefType =3D=3D null || !serviceRefType.isSetService= Completion()) { + throw new DeploymentException("Partial wsdl, but no servic= e completion supplied"); + } + GerServiceCompletionType serviceCompletion =3D serviceRefType.= getServiceCompletion(); + String serviceLocalName =3D serviceCompletion.getServiceName()= .trim(); + String namespace =3D definition.getTargetNamespace(); + serviceQName =3D new QName(namespace, serviceLocalName); + javax.wsdl.Service service =3D definition.createService(); + service.setQName(serviceQName); + GerPortCompletionType[] ports =3D serviceCompletion.getPortArr= ay(); + for (int i =3D 0; i < ports.length; i++) { + GerPortCompletionType port =3D ports[i]; + URL location =3D getLocation(port); + String portName =3D port.getPortName().trim(); + String bindingName =3D port.getBindingName().trim(); + QName bindingQName =3D new QName(namespace, bindingName); + Binding binding =3D definition.getBinding(bindingQName); + if (binding =3D=3D null) { + throw new DeploymentException("No binding found with q= name: " + bindingQName); + } + String credentialsName =3D port.isSetCredentialsName() ? p= ort.getCredentialsName().trim() : null; + mapBinding(binding, mapping, serviceQName, classLoader, co= ntext, module, soapVersion, schemaInfoBuilder, portName, serviceImpl, locat= ion, handlerInfos, seiPortNameToFactoryMap, seiClassNameToFactoryMap, crede= ntialsName, exceptionMap); =20 - if (portLocationMap !=3D null) { - SchemaInfoBuilder.updatePortLocations(service, portLocationMap= ); - } + } + } else { + //full wsdl + if (serviceRefType !=3D null && serviceRefType.isSetServiceCom= pletion()) { + throw new DeploymentException("Full wsdl, but service comp= letion supplied"); + } + //organize the extra port info + Map portMap =3D new HashMap(); + if (serviceRefType !=3D null) { + GerPortType[] ports =3D serviceRefType.getPortArray(); + for (int i =3D 0; i < ports.length; i++) { + GerPortType port =3D ports[i]; + String portName =3D port.getPortName().trim(); + portMap.put(portName, port); + } + } =20 - Map exceptionMap =3D WSDescriptorParser.getExceptionMap(mapping); + //find the service we are working with + javax.wsdl.Service service =3D getService(serviceQName, schema= InfoBuilder.getDefinition()); =20 - Map wsdlPortMap =3D service.getPorts(); - for (Iterator iterator =3D wsdlPortMap.entrySet().iterator(); iter= ator.hasNext();) { - Map.Entry entry =3D (Map.Entry) iterator.next(); - String portName =3D (String) entry.getKey(); - Port port =3D (Port) entry.getValue(); + Map wsdlPortMap =3D service.getPorts(); + for (Iterator iterator =3D wsdlPortMap.entrySet().iterator(); = iterator.hasNext();) { + Map.Entry entry =3D (Map.Entry) iterator.next(); + String portName =3D (String) entry.getKey(); + Port port =3D (Port) entry.getValue(); =20 - URL location =3D getAddressLocation(port); + GerPortType gerPort =3D (GerPortType) portMap.get(portName= ); =20 - Binding binding =3D port.getBinding(); + URL location =3D gerPort =3D=3D null? getAddressLocation(p= ort): getLocation(gerPort); + String credentialsName =3D gerPort =3D=3D null || gerPort.= getCredentialsName() =3D=3D null? null : gerPort.getCredentialsName().trim(= ); =20 - Style portStyle =3D getStyle(binding); + Binding binding =3D port.getBinding(); =20 - PortType portType =3D binding.getPortType(); + mapBinding(binding, mapping, serviceQName, classLoader, co= ntext, module, soapVersion, schemaInfoBuilder, portName, serviceImpl, locat= ion, handlerInfos, seiPortNameToFactoryMap, seiClassNameToFactoryMap, crede= ntialsName, exceptionMap); + } + } + } =20 - ServiceEndpointInterfaceMappingType[] endpointMappings =3D map= ping.getServiceEndpointInterfaceMappingArray(); + private void mapBinding(Binding binding, JavaWsdlMappingType mapping, = QName serviceQName, ClassLoader classLoader, DeploymentContext context, Mod= ule module, SOAPConstants soapVersion, SchemaInfoBuilder schemaInfoBuilder,= String portName, Object serviceImpl, URL location, List handlerInfos, Map = seiPortNameToFactoryMap, Map seiClassNameToFactoryMap, String credentialsNa= me, Map exceptionMap) throws DeploymentException { + Style portStyle =3D getStyle(binding); =20 - String credentialsName =3D credentialsNameMap =3D=3D null ? nu= ll : (String) credentialsNameMap.get(port.getName()); + PortType portType =3D binding.getPortType(); =20 - //port type corresponds to SEI - List operations =3D portType.getOperations(); - OperationInfo[] operationInfos =3D new OperationInfo[operation= s=2Esize()]; - if (endpointMappings.length =3D=3D 0) { - doLightweightMapping(service.getQName(), portType, mapping= , classLoader, context, module, operations, binding, portStyle, soapVersion= , operationInfos, schemaInfoBuilder, portName, serviceImpl, location, handl= erInfos, seiPortNameToFactoryMap, seiClassNameToFactoryMap, credentialsName= ); - } else { - doHeavyweightMapping(service.getQName(), portType, endpoin= tMappings, classLoader, context, module, operations, binding, portStyle, so= apVersion, exceptionMap, schemaInfoBuilder, mapping, operationInfos, portNa= me, serviceImpl, location, handlerInfos, seiPortNameToFactoryMap, seiClassN= ameToFactoryMap, credentialsName); - } + ServiceEndpointInterfaceMappingType[] endpointMappings =3D mapping= .getServiceEndpointInterfaceMappingArray(); + + + //port type corresponds to SEI + List operations =3D portType.getOperations(); + OperationInfo[] operationInfos =3D new OperationInfo[operations.si= ze()]; + if (endpointMappings.length =3D=3D 0) { + doLightweightMapping(serviceQName, portType, mapping, classLoa= der, context, module, operations, binding, portStyle, soapVersion, operatio= nInfos, schemaInfoBuilder, portName, serviceImpl, location, handlerInfos, s= eiPortNameToFactoryMap, seiClassNameToFactoryMap, credentialsName); + } else { + doHeavyweightMapping(serviceQName, portType, endpointMappings,= classLoader, context, module, operations, binding, portStyle, soapVersion,= exceptionMap, schemaInfoBuilder, mapping, operationInfos, portName, servic= eImpl, location, handlerInfos, seiPortNameToFactoryMap, seiClassNameToFacto= ryMap, credentialsName); + } + } + + private URL getLocation(GerPortType port) throws DeploymentException { + String protocol =3D port.getProtocol().trim(); + String host =3D port.getHost().trim(); + int portNum =3D port.getPort(); + String uri =3D port.getUri().trim(); + String locationURIString =3D protocol + "://" + host + ":" + portN= um + uri; + URL location; + try { + location =3D new URL(locationURIString); + } catch (MalformedURLException e) { + throw new DeploymentException("Could not construct web service= location URL from " + locationURIString); } + return location; } =20 private javax.wsdl.Service getService(QName serviceQName, Definition d= efinition) throws DeploymentException { @@ -280,8 +346,7 @@ throw new DeploymentException("no serviceQName supplied, a= nd there are " + services.size() + " services"); } if (services.size() =3D=3D 0) { - //partial wsdl - service =3D null; + throw new DeploymentException("No service in wsdl, and no = service completion supplied!"); } else { service =3D (javax.wsdl.Service) services.values().iterato= r().next(); } Modified: geronimo/trunk/modules/axis-builder/src/test/org/apache/geronimo/= axis/builder/ServiceReferenceTest.java URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/axis-builder/src/= test/org/apache/geronimo/axis/builder/ServiceReferenceTest.java?rev=3D17114= 5&r1=3D171144&r2=3D171145&view=3Ddiff =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- geronimo/trunk/modules/axis-builder/src/test/org/apache/geronimo/axis/b= uilder/ServiceReferenceTest.java (original) +++ geronimo/trunk/modules/axis-builder/src/test/org/apache/geronimo/axis/b= uilder/ServiceReferenceTest.java Fri May 20 12:53:16 2005 @@ -73,6 +73,7 @@ import org.apache.geronimo.xbeans.j2ee.JavaWsdlMappingDocument; import org.apache.geronimo.xbeans.j2ee.JavaWsdlMappingType; import org.apache.geronimo.xbeans.j2ee.PackageMappingType; +import org.apache.geronimo.xbeans.geronimo.naming.GerServiceRefType; =20 /** * @version $Rev: $ $Date: $ @@ -89,8 +90,7 @@ private final File wsdlDir =3D new File(basedir, "src/test-resources/i= nterop"); private final File wsdlFile =3D new File(wsdlDir, "interop.wsdl"); private List handlerInfos =3D new ArrayList(); - private Map portLocationMap =3D null; - private Map credentialsNameMap =3D new HashMap(); + private GerServiceRefType gerServiceRefType =3D null; =20 private Module module; =20 @@ -159,7 +159,7 @@ JavaWsdlMappingType mapping =3D buildLightweightMappingType(); QName serviceQName =3D new QName(NAMESPACE, "MockService"); AxisBuilder builder =3D new AxisBuilder(); - Object proxy =3D builder.createService(MockService.class, schemaIn= foBuilder, mapping, serviceQName, SOAPConstants.SOAP11_CONSTANTS, handlerIn= fos, portLocationMap, credentialsNameMap, context, module, isolatedCl); + Object proxy =3D builder.createService(MockService.class, schemaIn= foBuilder, mapping, serviceQName, SOAPConstants.SOAP11_CONSTANTS, handlerIn= fos, gerServiceRefType, context, module, isolatedCl); assertNotNull(proxy); assertTrue(proxy instanceof MockService); MockPort mockPort =3D ((MockService) proxy).getMockPort(); @@ -177,7 +177,7 @@ JavaWsdlMappingType mapping =3D mappingDocument.getJavaWsdlMapping= (); QName serviceQName =3D new QName("http://www.Monson-Haefel.com/jws= book/BookQuote", "BookQuoteService"); AxisBuilder builder =3D new AxisBuilder(); - Object proxy =3D builder.createService(BookQuoteService.class, sch= emaInfoBuilder, mapping, serviceQName, SOAPConstants.SOAP11_CONSTANTS, hand= lerInfos, portLocationMap, credentialsNameMap, context, module, isolatedCl); + Object proxy =3D builder.createService(BookQuoteService.class, sch= emaInfoBuilder, mapping, serviceQName, SOAPConstants.SOAP11_CONSTANTS, hand= lerInfos, gerServiceRefType, context, module, isolatedCl); assertNotNull(proxy); assertTrue(proxy instanceof BookQuoteService); BookQuote bookQuote =3D ((BookQuoteService) proxy).getBookQuotePor= t(); @@ -195,7 +195,7 @@ JavaWsdlMappingType mapping =3D mappingDocument.getJavaWsdlMapping= (); QName serviceQName =3D new QName("http://tempuri.org/4s4c/1/3/wsdl= /def/interopLab", "interopLab"); AxisBuilder builder =3D new AxisBuilder(); - Object proxy =3D builder.createService(InteropLab.class, schemaInf= oBuilder, mapping, serviceQName, SOAPConstants.SOAP11_CONSTANTS, handlerInf= os, portLocationMap, credentialsNameMap, context, module, isolatedCl); + Object proxy =3D builder.createService(InteropLab.class, schemaInf= oBuilder, mapping, serviceQName, SOAPConstants.SOAP11_CONSTANTS, handlerInf= os, gerServiceRefType, context, module, isolatedCl); assertNotNull(proxy); assertTrue(proxy instanceof InteropLab); InteropTestPortType interopTestPort =3D ((InteropLab) proxy).getin= teropTestPort(); @@ -225,7 +225,7 @@ AxisBuilder builder =3D new AxisBuilder(); Map portComponentRefMap =3D null; List handlers =3D null; - DeserializingReference reference =3D (DeserializingReference) buil= der.createService(InteropLab.class, wsdlURI, jaxrpcmappingURI, serviceQName= , portComponentRefMap, handlers, portLocationMap, credentialsNameMap, conte= xt, module, cl); + DeserializingReference reference =3D (DeserializingReference) buil= der.createService(InteropLab.class, wsdlURI, jaxrpcmappingURI, serviceQName= , portComponentRefMap, handlers, gerServiceRefType, context, module, cl); ClassLoader contextCl =3D context.getClassLoader(null); reference.setClassLoader(contextCl); Object proxy =3D reference.getContent(); Modified: geronimo/trunk/modules/connector-builder/src/test/org/apache/gero= nimo/connector/deployment/ConnectorModuleBuilderTest.java URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder= /src/test/org/apache/geronimo/connector/deployment/ConnectorModuleBuilderTe= st.java?rev=3D171145&r1=3D171144&r2=3D171145&view=3Ddiff =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- geronimo/trunk/modules/connector-builder/src/test/org/apache/geronimo/c= onnector/deployment/ConnectorModuleBuilderTest.java (original) +++ geronimo/trunk/modules/connector-builder/src/test/org/apache/geronimo/c= onnector/deployment/ConnectorModuleBuilderTest.java Fri May 20 12:53:16 2005 @@ -149,7 +149,7 @@ }; private ServiceReferenceBuilder serviceReferenceBuilder =3D new Servic= eReferenceBuilder() { //it could return a Service or a R= eference, we don't care - public Object createService(Class = serviceInterface, URI wsdlURI, URI jaxrpcMappingURI, QName serviceQName, Ma= p portComponentRefMap, List handlerInfos, Map portLocationMap, Map credenti= alsNameMap, DeploymentContext deploymentContext, Module module, ClassLoader= classLoader) { + public Object createService(Class = serviceInterface, URI wsdlURI, URI jaxrpcMappingURI, QName serviceQName, Ma= p portComponentRefMap, List handlerInfos, Object serviceRefType, Deployment= Context deploymentContext, Module module, ClassLoader classLoader) { return null; } }; Modified: geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/= j2ee/deployment/RefContext.java URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/j2ee-builder/src/= java/org/apache/geronimo/j2ee/deployment/RefContext.java?rev=3D171145&r1=3D= 171144&r2=3D171145&view=3Ddiff =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/d= eployment/RefContext.java (original) +++ geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/d= eployment/RefContext.java Fri May 20 12:53:16 2005 @@ -310,9 +310,9 @@ return containerName.getCanonicalName(); } } - - public Object getServiceReference(Class serviceInterface, URI wsdlURI,= URI jaxrpcMappingURI, QName serviceQName, Map portComponentRefMap, List ha= ndlerInfos, Map portLocationMap, Map credentialsNameMap, DeploymentContext = deploymentContext, Module module, ClassLoader classLoader) throws Deploymen= tException { - return serviceReferenceBuilder.createService(serviceInterface, wsd= lURI, jaxrpcMappingURI, serviceQName, portComponentRefMap, handlerInfos, po= rtLocationMap, credentialsNameMap, deploymentContext, module, classLoader); + =20 + public Object getServiceReference(Class serviceInterface, URI wsdlURI,= URI jaxrpcMappingURI, QName serviceQName, Map portComponentRefMap, List ha= ndlerInfos, Object serviceRefType, DeploymentContext deploymentContext, Mod= ule module, ClassLoader classLoader) throws DeploymentException { + return serviceReferenceBuilder.createService(serviceInterface, wsd= lURI, jaxrpcMappingURI, serviceQName, portComponentRefMap, handlerInfos, se= rviceRefType, deploymentContext, module, classLoader); } =20 private String getContainerId(URI module, String ejbLink, Map referenc= es) throws AmbiguousEJBRefException, UnknownEJBRefException { Modified: geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/= j2ee/deployment/ServiceReferenceBuilder.java URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/j2ee-builder/src/= java/org/apache/geronimo/j2ee/deployment/ServiceReferenceBuilder.java?rev= =3D171145&r1=3D171144&r2=3D171145&view=3Ddiff =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/d= eployment/ServiceReferenceBuilder.java (original) +++ geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/d= eployment/ServiceReferenceBuilder.java Fri May 20 12:53:16 2005 @@ -33,7 +33,7 @@ public interface ServiceReferenceBuilder { =20 //it could return a Service or a Reference, we don't care - Object createService(Class serviceInterface, URI wsdlURI, URI jaxrpcMa= ppingURI, QName serviceQName, Map portComponentRefMap, List handlerInfos, M= ap portLocationMap, Map credentialsNameMap, DeploymentContext deploymentCon= text, Module module, ClassLoader classLoader) throws DeploymentException; + Object createService(Class serviceInterface, URI wsdlURI, URI jaxrpcMa= ppingURI, QName serviceQName, Map portComponentRefMap, List handlerInfos, O= bject serviceRefType, DeploymentContext deploymentContext, Module module, C= lassLoader classLoader) throws DeploymentException; =20 //TODO a locate port method for links. =20 Modified: geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/= j2ee/deployment/UnavailableServiceReferenceBuilder.java URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/j2ee-builder/src/= java/org/apache/geronimo/j2ee/deployment/UnavailableServiceReferenceBuilder= .java?rev=3D171145&r1=3D171144&r2=3D171145&view=3Ddiff =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/d= eployment/UnavailableServiceReferenceBuilder.java (original) +++ geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/d= eployment/UnavailableServiceReferenceBuilder.java Fri May 20 12:53:16 2005 @@ -32,7 +32,7 @@ */ public class UnavailableServiceReferenceBuilder implements ServiceReferenc= eBuilder { =20 - public Object createService(Class serviceInterface, URI wsdlURI, URI j= axrpcMappingURI, QName serviceQName, Map portComponentRefMap, List handlerI= nfos, Map portLocationMap, Map credentialsNameMap, DeploymentContext deploy= mentContext, Module module, ClassLoader classLoader) throws DeploymentExcep= tion { + public Object createService(Class serviceInterface, URI wsdlURI, URI j= axrpcMappingURI, QName serviceQName, Map portComponentRefMap, List handlerI= nfos, Object serviceRefType, DeploymentContext deploymentContext, Module mo= dule, ClassLoader classLoader) throws DeploymentException { throw new DeploymentException("Service references are not availabl= e in this configuration"); } =20 Modified: geronimo/trunk/modules/j2ee-builder/src/test/org/apache/geronimo/= j2ee/deployment/EARConfigBuilderTest.java URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/j2ee-builder/src/= test/org/apache/geronimo/j2ee/deployment/EARConfigBuilderTest.java?rev=3D17= 1145&r1=3D171144&r2=3D171145&view=3Ddiff =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- geronimo/trunk/modules/j2ee-builder/src/test/org/apache/geronimo/j2ee/d= eployment/EARConfigBuilderTest.java (original) +++ geronimo/trunk/modules/j2ee-builder/src/test/org/apache/geronimo/j2ee/d= eployment/EARConfigBuilderTest.java Fri May 20 12:53:16 2005 @@ -67,7 +67,7 @@ private static ServiceReferenceBuilder serviceReferenceBuilder =3D new= ServiceReferenceBuilder() { =20 //it could return a Service or a Reference, we don't care - public Object createService(Class serviceInterface, URI wsdlURI, U= RI jaxrpcMappingURI, QName serviceQName, Map portComponentRefMap, List hand= lerInfos, Map portLocationMap, Map credentialsNameMap, DeploymentContext de= ploymentContext, Module module, ClassLoader classLoader) { + public Object createService(Class serviceInterface, URI wsdlURI, U= RI jaxrpcMappingURI, QName serviceQName, Map portComponentRefMap, List hand= lerInfos, Object serviceRefType, DeploymentContext deploymentContext, Modul= e module, ClassLoader classLoader) { return null; } }; Modified: geronimo/trunk/modules/j2ee-builder/src/test/org/apache/geronimo/= j2ee/deployment/EJBRefContextTest.java URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/j2ee-builder/src/= test/org/apache/geronimo/j2ee/deployment/EJBRefContextTest.java?rev=3D17114= 5&r1=3D171144&r2=3D171145&view=3Ddiff =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- geronimo/trunk/modules/j2ee-builder/src/test/org/apache/geronimo/j2ee/d= eployment/EJBRefContextTest.java (original) +++ geronimo/trunk/modules/j2ee-builder/src/test/org/apache/geronimo/j2ee/d= eployment/EJBRefContextTest.java Fri May 20 12:53:16 2005 @@ -210,7 +210,7 @@ } }, new ServiceReferenceBuilder() { //it could return a Service or a Reference, we don't care - public Object createService(Class serviceInterface, URI wsdlUR= I, URI jaxrpcMappingURI, QName serviceQName, Map portComponentRefMap, List = handlerInfos, Map portLocationMap, Map credentialsNameMap, DeploymentContex= t deploymentContext, Module module, ClassLoader classLoader) throws Deploym= entException { + public Object createService(Class serviceInterface, URI wsdlUR= I, URI jaxrpcMappingURI, QName serviceQName, Map portComponentRefMap, List = handlerInfos, Object serviceRefType, DeploymentContext deploymentContext, M= odule module, ClassLoader classLoader) throws DeploymentException { return null; } }, kernel); Modified: geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo= /jetty/deployment/JettyModuleBuilderTest.java URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/jetty-builder/src= /test/org/apache/geronimo/jetty/deployment/JettyModuleBuilderTest.java?rev= =3D171145&r1=3D171144&r2=3D171145&view=3Ddiff =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty= /deployment/JettyModuleBuilderTest.java (original) +++ geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty= /deployment/JettyModuleBuilderTest.java Fri May 20 12:53:16 2005 @@ -202,7 +202,7 @@ }, new ServiceReferenceBuilder() { //it could return a Service or a Reference, we don't c= are - public Object createService(Class serviceInterface, UR= I wsdlURI, URI jaxrpcMappingURI, QName serviceQName, Map portComponentRefMa= p, List handlerInfos, Map portLocationMap, Map credentialsNameMap, Deployme= ntContext deploymentContext, Module module, ClassLoader classLoader) throws= DeploymentException { + public Object createService(Class serviceInterface, UR= I wsdlURI, URI jaxrpcMappingURI, QName serviceQName, Map portComponentRefMa= p, List handlerInfos, Object serviceRefType, DeploymentContext deploymentCo= ntext, Module module, ClassLoader classLoader) throws DeploymentException { return null; } }, kernel)); Modified: geronimo/trunk/modules/naming-builder/src/java/org/apache/geronim= o/naming/deployment/ENCConfigBuilder.java URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/naming-builder/sr= c/java/org/apache/geronimo/naming/deployment/ENCConfigBuilder.java?rev=3D17= 1145&r1=3D171144&r2=3D171145&view=3Ddiff =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- geronimo/trunk/modules/naming-builder/src/java/org/apache/geronimo/nami= ng/deployment/ENCConfigBuilder.java (original) +++ geronimo/trunk/modules/naming-builder/src/java/org/apache/geronimo/nami= ng/deployment/ENCConfigBuilder.java Fri May 20 12:53:16 2005 @@ -432,16 +432,16 @@ } } =20 - //TODO current implementation does not deal with portComponentRefs. - public static void addServiceRefs(EARContext earContext, Module module= , ServiceRefType[] serviceRefs, Map serviceRefMap, Map serviceRefCredential= sNameMap, ClassLoader cl, ComponentContextBuilder builder) throws Deploymen= tException { + //TODO current implementation does not deal with portComponentRef link= s=2E + public static void addServiceRefs(EARContext earContext, Module module= , ServiceRefType[] serviceRefs, Map serviceRefMap, ClassLoader cl, Componen= tContextBuilder builder) throws DeploymentException { =20 RefContext refContext =3D earContext.getRefContext(); =20 for (int i =3D 0; i < serviceRefs.length; i++) { ServiceRefType serviceRef =3D serviceRefs[i]; String name =3D getStringValue(serviceRef.getServiceRefName()); - Map portLocationMap =3D (Map) serviceRefMap.get(name); - Map credentialsNameMap =3D (Map) serviceRefCredentialsNameMap.= get(name); + GerServiceRefType serviceRefType =3D (GerServiceRefType) servi= ceRefMap.get(name); +// Map credentialsNameMap =3D (Map) serviceRefCredentialsNameMa= p=2Eget(name); String serviceInterfaceName =3D getStringValue(serviceRef.getS= erviceInterface()); assureInterface(serviceInterfaceName, "javax.xml.rpc.Service",= "[Web]Service", cl); Class serviceInterface =3D null; @@ -491,7 +491,7 @@ List handlerInfos =3D buildHandlerInfoList(handlers, cl); =20 //we could get a Reference or the actual serializable Service = back. - Object ref =3D refContext.getServiceReference(serviceInterface= , wsdlURI, jaxrpcMappingURI, serviceQName, portComponentRefMap, handlerInfo= s, portLocationMap, credentialsNameMap, earContext, module, cl); + Object ref =3D refContext.getServiceReference(serviceInterface= , wsdlURI, jaxrpcMappingURI, serviceQName, portComponentRefMap, handlerInfo= s, serviceRefType, earContext, module, cl); builder.bind(name, ref); } =20 @@ -678,10 +678,11 @@ =20 addMessageDestinationRefs(earContext, uri, messageDestinationRefs,= cl, builder); =20 - Map serviceRefMap =3D new HashMap(); - Map serviceRefCredentialsNameMap =3D new HashMap(); - mapServiceRefs(gerServiceRefs, serviceRefMap, serviceRefCredential= sNameMap); - addServiceRefs(earContext, module, serviceRefs, serviceRefMap, ser= viceRefCredentialsNameMap, cl, builder); +// Map serviceRefMap =3D new HashMap(); +// Map serviceRefCredentialsNameMap =3D new HashMap(); +// mapServiceRefs(gerServiceRefs, serviceRefMap, serviceRefCredenti= alsNameMap); + Map serviceRefMap =3D mapServiceRefs(gerServiceRefs); + addServiceRefs(earContext, module, serviceRefs, serviceRefMap, cl,= builder); =20 return builder.getContext(); } @@ -730,35 +731,14 @@ return refMap; } =20 - private static Map mapServiceRefs(GerServiceRefType[] refs, Map refMap= , Map serviceRefCredentialsNameMap) { - if (refs !=3D null) { - for (int i =3D 0; i < refs.length; i++) { - GerServiceRefType ref =3D refs[i]; - String serviceRefName =3D ref.getServiceRefName().trim(); - Map portMap =3D new HashMap(); - Map credentialsMap =3D new HashMap(); - GerPortType[] ports =3D ref.getPortArray(); - for (int j =3D 0; j < ports.length; j++) { - GerPortType port =3D ports[j]; - String portName =3D port.getPortName().trim(); - String protocol =3D port.getProtocol().trim(); - String host =3D port.getHost().trim(); - int portNum =3D port.getPort(); - String uri =3D port.getUri().trim(); - String location =3D protocol + "://" + host + ":" + po= rtNum + uri; - portMap.put(portName, location); - - if (port.isSetCredentialsName()) { - String credentialsName =3D port.getCredentialsName= (); - credentialsMap.put(portName, credentialsName); - } - } - refMap.put(serviceRefName, portMap); - serviceRefCredentialsNameMap.put(serviceRefName, credentia= lsMap); - } + private static Map mapServiceRefs(GerServiceRefType[] refs) { + Map refMap =3D new HashMap(); + for (int i =3D 0; i < refs.length; i++) { + GerServiceRefType ref =3D refs[i]; + String serviceRefName =3D ref.getServiceRefName().trim(); + refMap.put(serviceRefName, ref); } return refMap; } - =20 } Modified: geronimo/trunk/modules/naming-builder/src/schema/geronimo-naming.= xsd URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/naming-builder/sr= c/schema/geronimo-naming.xsd?rev=3D171145&r1=3D171144&r2=3D171145&view=3Ddi= ff =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- geronimo/trunk/modules/naming-builder/src/schema/geronimo-naming.xsd (o= riginal) +++ geronimo/trunk/modules/naming-builder/src/schema/geronimo-naming.xsd Fr= i May 20 12:53:16 2005 @@ -6,9 +6,9 @@ Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - =20 + http://www.apache.org/licenses/LICENSE-2.0 - =20 + Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implie= d=2E @@ -189,15 +189,35 @@ - =20 + =20 + + + + + + + + + + + + + + + + + + + + =20