Author: dims Date: Wed Jun 6 11:51:22 2007 New Revision: 544919 URL: http://svn.apache.org/viewvc?view=rev&rev=544919 Log: Fix for AXIS2-2750 - The current createDispatch only handles SOAPBinding
Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/BindingProvider.java webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/spi/ServiceDelegate.java Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/BindingProvider.java URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/BindingProvider.java?view=diff&rev=544919&r1=544918&r2=544919 ============================================================================== --- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/BindingProvider.java (original) +++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/BindingProvider.java Wed Jun 6 11:51:22 2007 @@ -96,6 +96,10 @@ } return binding; } + + public void setBinding(Binding binding) { + this.binding = binding; + } public Map<String, Object> getRequestContext() { return requestContext; Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/spi/ServiceDelegate.java URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/spi/ServiceDelegate.java?view=diff&rev=544919&r1=544918&r2=544919 ============================================================================== --- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/spi/ServiceDelegate.java (original) +++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/spi/ServiceDelegate.java Wed Jun 6 11:51:22 2007 @@ -22,6 +22,7 @@ import javax.xml.ws.handler.HandlerResolver; import org.apache.axis2.client.ServiceClient; import org.apache.axis2.java.security.AccessController; +import org.apache.axis2.jaxws.binding.BindingImpl; import org.apache.axis2.jaxws.ExceptionFactory; import org.apache.axis2.jaxws.client.PropertyMigrator; import org.apache.axis2.jaxws.client.dispatch.JAXBDispatch; @@ -144,10 +145,10 @@ Messages.getMessage("createDispatchFail2", qname.toString())); } - // FIXME: This call needs to be revisited. Not really sure what we're trying to do here. - addBinding(endpointDesc.getClientBindingID()); - XMLDispatch<T> dispatch = new XMLDispatch<T>(this, endpointDesc); + + // FIXME: This call needs to be revisited. Not really sure what we're trying to do here. + dispatch.setBinding(addBinding(endpointDesc, endpointDesc.getClientBindingID())); if (mode != null) { dispatch.setMode(mode); } else { @@ -180,9 +181,8 @@ Messages.getMessage("createDispatchFail2", qname.toString())); } - addBinding(endpointDesc.getClientBindingID()); - JAXBDispatch<Object> dispatch = new JAXBDispatch(this, endpointDesc); + dispatch.setBinding(addBinding(endpointDesc, endpointDesc.getClientBindingID())); if (mode != null) { dispatch.setMode(mode); @@ -354,22 +354,26 @@ return getWSDLWrapper().getService(serviceName) != null; } - private void addBinding(String bindingId) { + private BindingImpl addBinding(EndpointDescription endpointDesc, String bindingId) { // TODO: before creating binding do I have to do something with Handlers ... how is Binding related to Handler, this mistry sucks!!! if (bindingId != null) { //TODO: create all the bindings here if (bindingId.equals(SOAPBinding.SOAP11HTTP_BINDING)) { //instantiate soap11 binding implementation here and call setBinding in BindingProvider + return new org.apache.axis2.jaxws.binding.SOAPBinding(endpointDesc); } if (bindingId.equals(SOAPBinding.SOAP12HTTP_BINDING)) { //instantiate soap11 binding implementation here and call setBinding in BindingProvider + return new org.apache.axis2.jaxws.binding.SOAPBinding(endpointDesc); } if (bindingId.equals(HTTPBinding.HTTP_BINDING)) { //instantiate http binding implementation here and call setBinding in BindingProvider + return new org.apache.axis2.jaxws.binding.HTTPBinding(endpointDesc); } - } + } + return new org.apache.axis2.jaxws.binding.SOAPBinding(endpointDesc); } private boolean isValidDispatchType(Class clazz) { --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]