When trying create a jaxws:endpoint referencing a wsdl file with
policy I'm getting this series of messages:
INFO: Creating Service
{http://wstest4.visionsolutions.com/}DoMathImplService from class
blah.DoMath
Apr 28, 2011 12:09:55 PM org.apache.cxf.endpoint.ServerImpl initDestination
INFO: Setting the server's publish address to be /DoMath
Apr 28, 2011 12:09:55 PM
org.apache.cxf.service.factory.ReflectionServiceFactoryBean
buildServiceFromWSDL
INFO: Creating Service {http://wstest4.visionsolutions.com/}MySvc from
WSDL: classpath:wsdl/mysvc_xl/MySvc.wsdl
Apr 28, 2011 12:09:55 PM
org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory
createEndpoint
WARNING: Could not find endpoint/port for
{http://wstest4.visionsolutions.com/}XLMathPort in wsdl. Using
{http://blah/}WSHttpBinding_MySvc.
Apr 28, 2011 12:09:55 PM
org.apache.cxf.ws.policy.AssertionBuilderRegistryImpl build
WARNING: No assertion builder for type
{http://schemas.xmlsoap.org/ws/2005/07/securitypolicy}SymmetricBinding
registered.
Apr 28, 2011 12:09:55 PM
org.apache.cxf.ws.policy.AssertionBuilderRegistryImpl build
WARNING: No assertion builder for type
{http://schemas.xmlsoap.org/ws/2005/07/securitypolicy}SignedSupportingTokens
registered.
Apr 28, 2011 12:09:55 PM
org.apache.cxf.ws.policy.AssertionBuilderRegistryImpl build
WARNING: No assertion builder for type
{http://schemas.xmlsoap.org/ws/2005/07/securitypolicy}Wss11
registered.
Apr 28, 2011 12:09:55 PM
org.apache.cxf.ws.policy.AssertionBuilderRegistryImpl build
WARNING: No assertion builder for type
{http://schemas.xmlsoap.org/ws/2005/07/securitypolicy}Trust10
registered.
Apr 28, 2011 12:09:55 PM
org.apache.cxf.ws.policy.AssertionBuilderRegistryImpl build
WARNING: No assertion builder for type
{http://www.w3.org/2006/05/addressing/wsdl}UsingAddressing registered.
Apr 28, 2011 12:09:55 PM org.apache.cxf.endpoint.ServerImpl initDestination
INFO: Setting the server's publish address to be /DoXLMath
Later, when I attempt to access the service I see these messages:
WARNING: No assertion builder for type
{http://schemas.xmlsoap.org/ws/2005/07/securitypolicy}SignedParts
registered.
Apr 28, 2011 12:10:22 PM
org.apache.cxf.ws.policy.AssertionBuilderRegistryImpl build
WARNING: No assertion builder for type
{http://schemas.xmlsoap.org/ws/2005/07/securitypolicy}EncryptedParts
registered.
Apr 28, 2011 12:10:22 PM org.apache.cxf.phase.PhaseInterceptorChain
doDefaultLogging
WARNING: Interceptor for {http://wstest4.visionsolutions.com/}MySvc
has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: None of the policy alternatives can
be satisfied.
at
org.apache.cxf.ws.policy.AbstractPolicyInterceptor.handleMessage(AbstractPolicyInterceptor.java:47)
at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255)
at
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:113)
at
org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:105)
at
org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:461)
....
The service is configured with CXFServlet in tomcat and configured
with spring. Here are some snips from applicationContext.xml:
<import resource="classpath:META-INF/cxf/cxf.xml" />
<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
<import
resource="classpath:META-INF/cxf/cxf-extension-http-binding.xml" />
<import resource="classpath:META-INF/cxf/cxf-extension-policy.xml" />
<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
<cxf:bus>
<cxf:features>
<p:policies ignoreUnknownAssertions="true" />
</cxf:features>
</cxf:bus>
<jaxws:endpoint id="blah.XLMath"
bindingUri="http://schemas.xmlsoap.org/wsdl/soap12/"
implementor="blah.XLMath"
wsdlLocation="classpath:wsdl/mysvc_xl/MySvc.wsdl"
serviceName="wst4:MySvc"
address="/DoXLMath">
<jaxws:properties>
<entry key="ws-security.callback-handler">
<ref bean="blah.CredentialStore" />
</entry>
<entry key="ws-security.signature.properties"
value="classpath:ws-security/server-keystore.properties" />
<entry key="ws-security.encryption.properties"
value="classpath:ws-security/server-keystore.properties" />
<entry key="ws-security.encryption.username"
value="useReqSigCert" />
</jaxws:properties>
</jaxws:endpoint>
The WSDL policy was original generated by .NET 3.5 and may have been
passed through Metro.
Google has been no help with this situation. Where should I look next?
--
Darrin