Jean-Baptiste Onofré wrote:
Hi all,
I have setup an SU like this (in the xbean.xml)
:
<beans xmlns:cxfse="http://servicemix.apache.org/cxfse/1.0"
xmlns:fsb="http://www.fimasys.com/fsb">
<bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigur
er">
<property name="locations">
<value>classpath:/automatic-validation-service-config.properties</
value>
</property>
</bean>
<bean id="jndiTemplate"
class="org.springframework.jndi.JndiTemplate">
<property
name="environment">
<props>
<prop
key="java.naming.factory.initial">
${bos.jndiContextFactory}
</prop>
<prop
key="java.naming.provider.url">
${bos.jndiUrlProvider}
</prop>
</props>
</property>
</bean>
<cxfse:endpoint
service="automatic-validation-service-proxy">
<cxfse:pojo>
<bean
class="org.springframework.ejb.access.SimpleRemoteStatelessSessionProxyFact
oryBean">
<property name="jndiName"
value="ejb/profinance/back-office/AutomaticSimulationSession"/>
<property name="businessInterface"
value="com.fimasys.finance.profinance.components.simulation.common.ejb.Auto
maticSimulationSession"/>
<property name="homeInterface"
value="com.fimasys.finance.profinance.components.simulation.common.ejb.Auto
maticSimulationSessionHome"/>
<property
name="refreshHomeOnConnectFailure" value="true"/>
<property name="cacheHome"
value="true"/>
<property name="lookupHomeOnStartup"
value="true"/>
<property name="resourceRef"
value="false"/>
<property name="jndiTemplate"
ref="jndiTemplate"/>
</bean>
</cxfse:pojo>
</cxfse:endpoint>
</beans>
In the SU POM dependencies, I have added all
required jar (the jbossall-client providing the JNDI context, the Spring
context to have the SimpleRemoteStatelessSessionProxyFactoryBean and my
application client to have the stub, home and remote
interface).
When I deploy the SA which embed this SU, I have
this stack trace :
<stack-trace><![CDATA[java.lang.NullPointerException
at
org.apache.cxf.jaxws.support.JaxWsImplementorInfo.getWSInterfaceName(JaxWsI
mplementorInfo.java:235)
at
org.apache.cxf.jaxws.support.JaxWsImplementorInfo.initialise(JaxWsImplement
orInfo.java:274)
at
org.apache.cxf.jaxws.support.JaxWsImplementorInfo.<init>(JaxWsImpleme
ntorInfo.java:57)
at
org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:269)
at
org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:261)
at
org.apache.servicemix.cxfse.CxfSeEndpoint.start(CxfSeEndpoint.java:243)
at
org.apache.servicemix.common.endpoints.SimpleEndpoint.activate(SimpleEndpoi
nt.java:55)
at
org.apache.servicemix.common.ServiceUnit.start(ServiceUnit.java:53)
at
org.apache.servicemix.common.BaseServiceUnitManager.start(BaseServiceUnitMa
nager.java:151)
at
org.apache.servicemix.jbi.framework.ServiceUnitLifeCycle.start(ServiceUnitL
ifeCycle.java:103)
at
org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.start(ServiceA
ssemblyLifeCycle.java:132)
at
org.apache.servicemix.jbi.framework.DeploymentService.start(DeploymentServi
ce.java:378)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAsse
mbly(AutoDeploymentService.java:355)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(Aut
oDeploymentService.java:256)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateExternalArc
hive(AutoDeploymentService.java:204)
at
org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchive(JBIC
ontainer.java:476)
at
org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchive(JBIC
ontainer.java:486)
at
org.apache.servicemix.jbi.framework.AdminCommandsService.deployServiceAssem
bly(AdminCommandsService.java:209)
[...]
Asking on the IRC, the WSDL descriptor is not
required.
Should I provide a kind of ServiceImpl defining
@WebService annotation ?
Yes, you need define @WebService annotation for your Impl class
Thanks
Regards