使用Eclipse(Helios)从JAX-WS 2.0实现生成Web Service

时间:2010-07-21 16:33:32

标签: java eclipse

我目前正在使用Eclipse 3.6(Helios)。我尝试过使用Ant wsgen任务,但Ant上不存在(我缺少什么?)

我想从以下示例代码生成Web Service WSDL:

import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;

/**
 * @author Buhake Sindi
 * @since 19 July 2010
 *
 */
@WebService(name="SampleWS")
@SOAPBinding 
(
        style = SOAPBinding.Style.DOCUMENT,
        use = SOAPBinding.Use.LITERAL,
        parameterStyle = SOAPBinding.ParameterStyle.WRAPPED
)
public class SampleWSImpl implements SampleWS {

    private static String userName;

    /* (non-Javadoc)
     * @see SampleWS#setUserName(java.lang.String)
     */
    @WebMethod
    @Override
    public void setUserName(@WebParam(name="userName") String userName) {
        // TODO Auto-generated method stub
        this.userName = userName;

    }

    /* (non-Javadoc)
     * @see SampleWS#getUserName()
     */
    @WebMethod
    @Override
    public String getUserName() {
        // TODO Auto-generated method stub
        return userName;
    }
}

使用Eclipse Axis 1.4 Web Service生成器,它可以正常工作。但是,我想完全不使用Axis 1.

提前致谢。

PPS * 如何设置Eclipse以使用Axis2?

2 个答案:

答案 0 :(得分:1)

我没有在Helios中尝试过这个,但我知道一些早期的Eclipse版本没有能力生成JAX-WS工件。

我记得,SoapUI plugin可以生成这些工件,但我从未使用它。您可以在Eclipse Marketplace上找到SoapUI(帮助 - > Eclipse Marketplace ...)。

顺便提一下,除了旧的Axis / Axis 2产品之外,Apache确实制作了CXF,一个JAX-WS / JAX-RS堆栈。

答案 1 :(得分:0)

我做的是这个,

我在Eclipse和Apache CXF 2.9上配置了Axis 2。这样,您就可以使用Java EE(Java 5或更高版本)Web Service注释来生成Web服务。

请记住,Apache CXF支持WSDL 1.2,而Apache 2(编写时的最新版本,2.5.1)支持WSDL 2.0

希望这有助于其他人。