Hi, I'm trying to set a security policy to the webservice endpoint configuration file (*jbossws-cxf.xml*), but it warns an exception when I try to access the wsdl.
*the jbossws-cxf.xml file: <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:beans=" http://www.springframework.org/schema/beans" xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:p=" http://cxf.apache.org/policy" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xsi:schemaLocation=" http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd http://cxf.apache.org/policy http://cxf.apache.org/schemas/policy.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://schemas.xmlsoap.org/ws/2004/09/policy http://schemas.xmlsoap.org/ws/2004/09/policy/ws-policy.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"> <p:externalAttachment id="AjuizamentoWSPolicy" location="classpath:policies.xml"/> <jaxws:endpoint id="AjuizamentoService" address=" http://localhost:8080/tjpews-ear-tjpews-ejb/AjuizamentoServiceImpl" implementor="br.jus.tjpe.ws.service.impl.AjuizamentoServiceImpl"> <jaxws:invoker> <bean class="org.jboss.wsf.stack.cxf.InvokerEJB3" /> </jaxws:invoker> <jaxws:features> <p:policies> <wsp:PolicyReference URI="#AjuizamentoWSPolicy" /> </p:policies> </jaxws:features> <jaxws:properties> <entry key="ws-security.signature.properties" value="serviceKeystore.properties" /> <entry key="ws-security.encryption.properties" value="serviceKeystore.properties" /> <entry key="ws-security.callback-handler" value="br.jus.tjpe.ws.security.callback.ServiceKeystorePasswordCallback" /> </jaxws:properties> </jaxws:endpoint> </beans> the policies.xml file: <?xml version="1.0" encoding="UTF-8"?> <wsp:Policy wsu:Id="AjuizamentoWSPolicy" xmlns:wsu=" http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd " xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:sp=" http://schemas.xmlsoap.org/ws/2005/07/securitypolicy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd http://schemas.xmlsoap.org/ws/2004/09/policy http://schemas.xmlsoap.org/ws/2004/09/policy/ws-policy.xsd http://schemas.xmlsoap.org/ws/2005/07/securitypolicy http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/ws-securitypolicy.xsd"> <wsp:ExactlyOne> <wsp:All> <sp:AsymmetricBinding> <wsp:Policy> <sp:InitiatorToken> <wsp:Policy> <sp:X509Token sp:IncludeToken=" http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never"> <wsp:Policy> <sp:WssX509V3Token10 /> </wsp:Policy> </sp:X509Token> </wsp:Policy> </sp:InitiatorToken> <sp:RecipientToken> <wsp:Policy> <sp:X509Token sp:IncludeToken=" http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never"> <wsp:Policy> <sp:WssX509V3Token10 /> </wsp:Policy> </sp:X509Token> </wsp:Policy> </sp:RecipientToken> <sp:AlgorithmSuite> <wsp:Policy> <sp:Basic256Rsa15 /> </wsp:Policy> </sp:AlgorithmSuite> <sp:Layout> <wsp:Policy> <sp:Strict /> </wsp:Policy> </sp:Layout> <sp:IncludeTimestamp /> <sp:ProtectTokens /> <sp:OnlySignEntireHeadersAndBody /> </wsp:Policy> </sp:AsymmetricBinding> <sp:SignedParts> <sp:Body /> </sp:SignedParts> <sp:EncryptedParts> <sp:Body /> </sp:EncryptedParts> <sp:Wss10> <wsp:Policy> <sp:MustSupportRefKeyIdentifier /> </wsp:Policy> </sp:Wss10> </wsp:All> </wsp:ExactlyOne> </wsp:Policy> The exception: * 14:57:47,978 WARN [XmlBeanDefinitionReader] Ignored XML validation warning org.xml.sax.SAXParseException: schema_reference.4: Failed to read schema document 'xmldsig-core-schema.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not <xsd:schema>. at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source) at org.apache.xerces.util.ErrorHandlerWrapper.warning(Unknown Source) at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) at org.apache.xerces.impl.xs.traversers.XSDHandler.reportSchemaWarning(Unknown Source) at org.apache.xerces.impl.xs.traversers.XSDHandler.getSchemaDocument(Unknown Source) at org.apache.xerces.impl.xs.traversers.XSDHandler.resolveSchema(Unknown Source) at org.apache.xerces.impl.xs.traversers.XSDHandler.constructTrees(Unknown Source) at org.apache.xerces.impl.xs.traversers.XSDHandler.constructTrees(Unknown Source) at org.apache.xerces.impl.xs.traversers.XSDHandler.parseSchema(Unknown Source) at org.apache.xerces.impl.xs.XMLSchemaLoader.loadSchema(Unknown Source) at org.apache.xerces.impl.xs.XMLSchemaValidator.findSchemaGrammar(Unknown Source) at org.apache.xerces.impl.xs.XMLSchemaValidator.handleStartElement(Unknown Source) at org.apache.xerces.impl.xs.XMLSchemaValidator.emptyElement(Unknown Source) at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.DOMParser.parse(Unknown Source) at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source) at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:75) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:396) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310) at org.jboss.wsf.stack.cxf.CXFServletExt.loadAdditionalConfigExt(CXFServletExt.java:122) at org.jboss.wsf.stack.cxf.CXFServletExt.loadBus(CXFServletExt.java:101) at org.apache.cxf.transport.servlet.AbstractCXFServlet.init(AbstractCXFServlet.java:79) at org.jboss.wsf.stack.cxf.CXFServletExt.init(CXFServletExt.java:73) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1048) at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:777) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:619) 14:57:48,150 INFO [GenericApplicationContext] Refreshing org.springframework.context.support.genericapplicationcont...@a36310: display name [org.springframework.context.support.genericapplicationcont...@a36310]; startup date [Wed Jun 10 14:57:48 GMT-03:00 2009]; root of context hierarchy 14:57:48,150 INFO [GenericApplicationContext] Bean factory for application context [org.springframework.context.support.genericapplicationcont...@a36310]: org.springframework.beans.factory.support.defaultlistablebeanfact...@7121cd 14:57:48,150 INFO [DefaultListableBeanFactory] Pre-instantiating singletons in org.springframework.beans.factory.support.defaultlistablebeanfact...@7121cd: defining beans [AjuizamentoWSPolicy,AjuizamentoService]; root of factory hierarchy 14:57:48,431 INFO [ReflectionServiceFactoryBean] Creating Service { http://impl.service.ws.tjpe.jus.br/}AjuizamentoService from class br.jus.tjpe.ws.service.api.AjuizamentoService 14:57:49,525 INFO [ServerImpl] Setting the server's publish address to be http://localhost:8080/tjpews-ear-tjpews-ejb/AjuizamentoServiceImpl 14:57:49,540 INFO [DefaultListableBeanFactory] Destroying singletons in org.springframework.beans.factory.support.defaultlistablebeanfact...@7121cd: defining beans [AjuizamentoWSPolicy,AjuizamentoService]; root of factory hierarchy 14:57:49,540 ERROR [[/tjpews-ear-tjpews-ejb]] StandardWrapper.Throwable org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'AjuizamentoService': Invocation of init method failed; nested exception is javax.xml.ws.WebServiceException: java.lang.ClassCastException: org.apache.cxf.ws.policy.attachment.external.ExternalAttachmentProvider cannot be cast to org.apache.cxf.ws.policy.PolicyBean at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1337) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409) at java.security.AccessController.doPrivileged(Native Method) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:221) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:729) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:381) at org.jboss.wsf.stack.cxf.CXFServletExt.loadAdditionalConfigExt(CXFServletExt.java:124) at org.jboss.wsf.stack.cxf.CXFServletExt.loadBus(CXFServletExt.java:101) at org.apache.cxf.transport.servlet.AbstractCXFServlet.init(AbstractCXFServlet.java:79) at org.jboss.wsf.stack.cxf.CXFServletExt.init(CXFServletExt.java:73) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1048) at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:777) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:619) Caused by: javax.xml.ws.WebServiceException: java.lang.ClassCastException: org.apache.cxf.ws.policy.attachment.external.ExternalAttachmentProvider cannot be cast to org.apache.cxf.ws.policy.PolicyBean at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:275) at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:209) at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:404) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1413) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1374) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1334) ... 33 more Caused by: java.lang.ClassCastException: org.apache.cxf.ws.policy.attachment.external.ExternalAttachmentProvider cannot be cast to org.apache.cxf.ws.policy.PolicyBean at org.apache.cxf.ws.policy.WSPolicyFeature$1.resolveReference(WSPolicyFeature.java:235) at org.apache.cxf.ws.policy.WSPolicyFeature.resolveLocal(WSPolicyFeature.java:243) at org.apache.cxf.ws.policy.WSPolicyFeature.resolveReference(WSPolicyFeature.java:216) at org.apache.cxf.ws.policy.WSPolicyFeature.initializeEndpointPolicy(WSPolicyFeature.java:144) at org.apache.cxf.ws.policy.WSPolicyFeature.initialize(WSPolicyFeature.java:121) at org.apache.cxf.frontend.ServerFactoryBean.applyFeatures(ServerFactoryBean.java:198) at org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:150) at org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:167) at org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:346) at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:259) ... 42 more 14:57:49,540 ERROR [[AjuizamentoServiceImpl]] Allocate exception for servlet AjuizamentoServiceImpl java.lang.ClassCastException: org.apache.cxf.ws.policy.attachment.external.ExternalAttachmentProvider cannot be cast to org.apache.cxf.ws.policy.PolicyBean at org.apache.cxf.ws.policy.WSPolicyFeature$1.resolveReference(WSPolicyFeature.java:235) at org.apache.cxf.ws.policy.WSPolicyFeature.resolveLocal(WSPolicyFeature.java:243) at org.apache.cxf.ws.policy.WSPolicyFeature.resolveReference(WSPolicyFeature.java:216) at org.apache.cxf.ws.policy.WSPolicyFeature.initializeEndpointPolicy(WSPolicyFeature.java:144) at org.apache.cxf.ws.policy.WSPolicyFeature.initialize(WSPolicyFeature.java:121) at org.apache.cxf.frontend.ServerFactoryBean.applyFeatures(ServerFactoryBean.java:198) at org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:150) at org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:167) at org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:346) at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:259) at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:209) at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:404) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1413) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1374) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1334) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409) at java.security.AccessController.doPrivileged(Native Method) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:221) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:729) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:381) at org.jboss.wsf.stack.cxf.CXFServletExt.loadAdditionalConfigExt(CXFServletExt.java:124) at org.jboss.wsf.stack.cxf.CXFServletExt.loadBus(CXFServletExt.java:101) at org.apache.cxf.transport.servlet.AbstractCXFServlet.init(AbstractCXFServlet.java:79) at org.jboss.wsf.stack.cxf.CXFServletExt.init(CXFServletExt.java:73) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1048) at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:777) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:619)
