ch.elca.el4j.services.remoting.protocol
Class JaxwsSpring

java.lang.Object
  extended by ch.elca.el4j.services.remoting.AbstractRemotingProtocol
      extended by ch.elca.el4j.services.remoting.protocol.AbstractInetSocketAddressProtocol
          extended by ch.elca.el4j.services.remoting.protocol.AbstractInetSocketAddressWebProtocol
              extended by ch.elca.el4j.services.remoting.protocol.JaxwsSpring
All Implemented Interfaces:
DisposableBean, InitializingBean, ApplicationContextAware
Direct Known Subclasses:
JaxwsSpringSoapHeaderContextPassing

public class JaxwsSpring
extends AbstractInetSocketAddressWebProtocol

This class implements all needed things for the JAX-WS protocol using Spring remoting. Creating service exporters is not supported because of some restrictions (see createExporterBean(RemotingServiceExporter, Class, Object). This protocol should be used for clients (no servers) that communicate with self-written servers (i.e. Code is available and should not be generated by wsimport). If the code of one side has to be generated, use Jaxws.

Author:
Stefan Wismer (SWI)
File-location:
JaxwsSpring
Last check-in date:
2010-11-02 11:44:37 +0100 (Di, 02. Nov 2010) by swisswheel for revision 4204

Field Summary
 
Fields inherited from class ch.elca.el4j.services.remoting.AbstractRemotingProtocol
m_parentApplicationContext
 
Constructor Summary
JaxwsSpring()
           
 
Method Summary
protected  void adaptProxyServiceProperties(MutablePropertyValues props)
          Method providing an extension point do adapt the proxy service.
 Object createExporterBean(RemotingServiceExporter exporterBean, Class serviceInterfaceWithContext, Object serviceProxy)
          Do not use exporter from JaxwsSpring, but Jaxws, because it requires JDK 6 and does not support implicit context passing.
 Object createProxyBean(RemotingProxyFactoryBean proxyBean, Class serviceInterfaceWithContext)
          Method to create the proxy bean.
 String generateUrl(AbstractRemotingBase remoteBase)
          Method to generate the url to be able to access the service.
 Class getExporterObjectType()
          Method to get the class type of the exporter object.
 boolean getProtocolSpecificContextPassing()
          Does this protocol handle context passing on its own?
 Class getProxyObjectType()
          Method to get the class type of the proxy object.
 
Methods inherited from class ch.elca.el4j.services.remoting.protocol.AbstractInetSocketAddressWebProtocol
afterPropertiesSet, finalizeExporterDependentBeans, getContextPath, prepareExporterDependentBeans, setContextPath
 
Methods inherited from class ch.elca.el4j.services.remoting.protocol.AbstractInetSocketAddressProtocol
getServiceHost, getServicePort, getServiceProtocol, setServiceHost, setServicePort, setServiceProtocol
 
Methods inherited from class ch.elca.el4j.services.remoting.AbstractRemotingProtocol
checkRemotingExporter, checkRemotingProxy, destroy, getChlidApplicationContexts, getClientContextInvocationHandler, getImplicitContextPassingRegistry, getProtocolSpecificConfiguration, getProxyInterface, isDoNotForcePreInstantiationOfExporterObject, registerChildApplicationContext, setApplicationContext, setDoNotForcePreInstantiationOfExporterObject, setImplicitContextPassingRegistry, setProtocolSpecificConfiguration, setProtocolSpecificContextPassing, unregisterChildApplicationContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JaxwsSpring

public JaxwsSpring()
Method Detail

createProxyBean

public Object createProxyBean(RemotingProxyFactoryBean proxyBean,
                              Class serviceInterfaceWithContext)
Method to create the proxy bean.

Specified by:
createProxyBean in class AbstractRemotingProtocol
Parameters:
proxyBean - Is the bean where the method gets information about the proxy bean.
serviceInterfaceWithContext - Is the modified interface.
Returns:
Returns the created proxy bean.

createExporterBean

public Object createExporterBean(RemotingServiceExporter exporterBean,
                                 Class serviceInterfaceWithContext,
                                 Object serviceProxy)
Do not use exporter from JaxwsSpring, but Jaxws, because it requires JDK 6 and does not support implicit context passing. Method to create the exporter bean.

Specified by:
createExporterBean in class AbstractRemotingProtocol
Parameters:
exporterBean - Is the bean where the method gets information about the exporter bean.
serviceInterfaceWithContext - Is the modified interface.
serviceProxy - Is the bean which has to wrapped.
Returns:
Returns the generated exporter bean.

getProxyObjectType

public Class getProxyObjectType()
Method to get the class type of the proxy object.

Specified by:
getProxyObjectType in class AbstractRemotingProtocol
Returns:
Returns the class type.

getExporterObjectType

public Class getExporterObjectType()
Method to get the class type of the exporter object.

Specified by:
getExporterObjectType in class AbstractRemotingProtocol
Returns:
Returns the class type.

generateUrl

public String generateUrl(AbstractRemotingBase remoteBase)
Method to generate the url to be able to access the service.

Specified by:
generateUrl in class AbstractInetSocketAddressProtocol
Parameters:
remoteBase - Is the reference to get information about the service.
Returns:
Returns the generated service url.

getProtocolSpecificContextPassing

public boolean getProtocolSpecificContextPassing()
Does this protocol handle context passing on its own? Yes.

Overrides:
getProtocolSpecificContextPassing in class AbstractRemotingProtocol
Returns:
Whether this protocol handles the context (true)

adaptProxyServiceProperties

protected void adaptProxyServiceProperties(MutablePropertyValues props)
Method providing an extension point do adapt the proxy service.

Parameters:
props - The service properties


Copyright © 2005-2011 ELCA. All Rights Reserved.