如何在 Spring 中配置 jax-ws 处理程序?

Yan*_*ang 2 web-services jax-ws

我根据 jax-ws API 集成 jax-ws 与 Spring ,但我在我的 webservice 项目中遇到异常,这里是 API 站点:http://jax-ws-commons.java.net/spring/,我有相同的配置 xml在我的项目中,但我得到一个例外如下:

    Caused by: org.xml.sax.SAXParseException: cvc-complex-type.3.2.2: Attribute 'handlers'                   is not allowed to appear in element 'ws:service'.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
Run Code Online (Sandbox Code Playgroud)

谁能给我解决方案?

tim*_*nen 6

给出的示例是错误的,并且对于模式而言无效。handlers 不是一个属性,而是一个嵌套元素。像这样使用它:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:wss="http://jax-ws.dev.java.net/spring/servlet"
    xmlns:ws="http://jax-ws.dev.java.net/spring/core"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://jax-ws.dev.java.net/spring/servlet http://jax-ws.dev.java.net/spring/servlet.xsd http://jax-ws.dev.java.net/spring/core http://jax-ws.dev.java.net/spring/core.xsd">


 <wss:binding url="/services/demo">
     <wss:service>
         <ws:service bean="#demoEndpoint">
             <ws:handlers>
                 <ref bean="demoHandler"/>
             </ws:handlers>
         </ws:service>
     </wss:service>
 </wss:binding>
</bean>
Run Code Online (Sandbox Code Playgroud)