Announcement Announcement Module
Collapse
No announcement yet.
How to connect to WebServices via <service-ref> (from JNDI) Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • How to connect to WebServices via <service-ref> (from JNDI)

    Hi!

    I use EJB2.1 on JBoss 4.0.4, and declared service-ref this way in application-client.xml:
    Code:
    	<service-ref>
    		<description>WebService pod którym jest widoczne SMSGW</description>
    		<service-ref-name>service/myService</service-ref-name>
    		<service-interface>my.WSProxy</service-interface>
    		<wsdl-file>USE_JBOSS_CLIENT_XML_OVERRIDE</wsdl-file>
    		<jaxrpc-mapping-file>META-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file>
    	</service-ref>
    and in jboss-client.xml
    Code:
    <jboss-client>
      <jndi-name>ws4ee-client</jndi-name>
      <service-ref>
        <service-ref-name>service/myService</service-ref-name>
        <wsdl-override>http://192.168.0.36/wsproxy.asmx?WSDL</wsdl-override>
      </service-ref>
    </jboss-client>
    It creates Service reference in JNDI under java:comp/env/service/myService to my.WSProxy interface. To retrieve actual interface i have to call
    Code:
            WSProxySoap service = proxy.getWSProxySoap();
    My problem is that WSProxySoap throws java.rmi.RemoteException on every method, and my application is aware of nature of this interface.

    Now i access this interface by org.springframework.jndi.JndiObjectFactoryBean. Is there any chance to retrieve service-ref from JNDI, and to hide retrieved object behind Business Interface of this service?

    Or maybe I should use JaxRpcProxyFactoryBean? But then <service-ref> is not needed?

    Accessed service is created on .NET platform.
Working...
X