Are the classes for your ejb's in the system classpath? I've found that Tomcat
can not load a class through soap unless that class (or jar which contains it) is
in the classpath it starts with. I asked about this and it seems like it is the
expected behavior.
hope that helps.
-javier
Paul Tamas wrote:
> Hi all,
>
> I am using JBoss-2.2.2_Tomcat-3.2.2, Apache-Soap 2.2, Apache-Xerces 1.4.0 on
> Win.2K.
> I deployed my bean, I deployed a soap service for this bean, but when I run
> the soap client I get the following error:
>
> Ouch, the call failed:
> Fault Code = SOAP-ENV:Server
> Fault String = Error in connecting to EJB
>
> And in the jBoss console:
>
> [EmbeddedTomcatSX] =============================================
> [EmbeddedTomcatSX] In TemplateProvider.locate()
> [EmbeddedTomcatSX] URI: urn:servicetest
> [EmbeddedTomcatSX] DD.ServiceClass:
> org.apache.soap.providers.StatelessEJBProvider
> [EmbeddedTomcatSX] DD.ProviderClass: okiok.fp.ejb.AllTables
> [EmbeddedTomcatSX] Call.MethodName: getApplicationsOfUser
> [EmbeddedTomcatSX] Exception caught: javax.naming.CommunicationException
> [Root exception is java.lang.ClassNotFoundException:
> okiok.fp.ejb.AllTablesHome]
>
> I have the following directory structure :
>
> C:\test_ejb
> META-INF
> ejb-jar.xml
> DeploymentDescriptor.xml
>
> okiok
> fp
> ejb
> {java source & class files here}
>
> C:\test_client_soap
> {java source & class file for client}
>
> Here is my ejb-jar.xml:
>
> <?xml version="1.0" encoding="Cp1252"?>
> <ejb-jar>
> <description>Application EJB</description>
> <display-name>EJB's</display-name>
> <enterprise-beans>
> <session>
> <ejb-name>AllTablesEJB</ejb-name>
> <home>okiok.fp.ejb.AllTablesHome</home>
> <remote>okiok.fp.ejb.AllTables</remote>
> <ejb-class>okiok.fp.ejb.AllTablesBean</ejb-class>
> <session-type>Stateless</session-type>
> <transaction-type>Container</transaction-type>
> </session>
> </enterprise-beans>
> </ejb-jar>
>
> and my DeploymentDescriptor.xml:
>
> <?xml version="1.0" encoding="Cp1252"?>
> <isd:service xmlns:isd="http://xml.apache.org/xml-soap/deployment"
> id="urn:servicetest">
> <isd:provider type="org.apache.soap.providers.StatelessEJBProvider"
> scope="Application"
> methods="create">
> <isd:java class="okiok.fp.ejb.AllTables"/>
> <isd:option key="JNDIName" value="AllTablesEJB"/>
> <isd:option key="FullHomeInterfaceName"
> value="okiok.fp.ejb.AllTablesHome" />
> <isd:option key="ContextProviderURL" value="localhost:1099" />
> <isd:option key="FullContextFactoryName"
> value="org.jnp.interfaces.NamingContextFactory" />
> </isd:provider>
>
> <isd:faultListener>org.apache.soap.server.DOMFaultListener</isd:faultListener>
> </isd:service>
>
> Please, can somebody help me.
> Thanks in advance,
> Paul
>
> _________________________________________________________________________
> Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.