【问题标题】:Is it possible to have Netbeans generate web service from Java class?是否可以让 Netbeans 从 Java 类生成 Web 服务?
【发布时间】:2015-12-29 16:11:01
【问题描述】:

我知道 Netbeans 可以从 .wsdl 文件生成 Java 方法。

Netbeans 能否根据 Java 类及其所有方法创建 .wsdl 文件?

诸如此类的教程 告诉我如何手动创建 Web 服务:

https://netbeans.org/kb/docs/websvc/jax-ws.html

我知道该怎么做。我想知道是否有更好、更快的方法从我已有的 Java 方法中创建 Web 服务。

假设我有一个 Java 接口类,它要求输入 2 个字符串并返回一个字符串:

public interface WeatherInterface {
    public String getWeatherInfo(String cityName, String zipCode);
}

我想知道 Netbeans 中是否有代码生成器或为我编写 Web 服务代码的插件,这样我就不必使用“添加操作”按钮添加每个字段,如以上教程链接。

我正在使用带有 Java 7 的 Netbeans 8.0.2

这是我右键单击项目 > 新建 > Web 服务(选择包)> 完成时得到的结果

package apackage;
import javax.jws.WebService;
import javax.jws.WebMethod;
import javax.jws.WebParam;
@WebService(serviceName = "NewWebService")
public class NewWebService {
    /**
     * This is a sample web service operation
     */
    @WebMethod(operationName = "hello")
    public String hello(@WebParam(name = "name") String txt) {
        return "Hello " + txt + " !";
    }
}

该包中我的 Java 类中的任何方法都没有生成......只是通用的“hello”方法。

提前致谢, 乔什

【问题讨论】:

    标签: java web-services netbeans-8


    【解决方案1】:

    就我的所有研究而言,没有任何工具可以从您的 Java 方法中自动生成 Web 服务方法。 Web 服务方法很容易创建。如果您要制作数百个,我为您感到难过;这是很多包装要做的事情。无论如何,这是我制作的一个:

    @WebMethod(operationName = "activate")
    public String activate(
            @WebParam(name = "userEdipi") String userEdipi,
            @WebParam(name = "adminEdipi") String adminEdipi,
            @WebParam(name = "sarId") String sarId) {
        try {
            String response = acctmgrInterface.activate(userEdipi, adminEdipi, sarId);
            return response;
        } catch (Exception e) {
            logger.error("AcctmgrWebService.activate(): error - have your admin check the server logs");
            logger.error(ExceptionUtils.getStackTrace(e.fillInStackTrace()));
            return e.toString();
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2012-11-18
      • 2012-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-22
      • 2011-12-25
      • 1970-01-01
      相关资源
      最近更新 更多