0

我是 WSO2 ESB 的新手。我安装了 4.7.0 版本。我正在尝试使用 CXF 框架开发的第一种 RESTFul Web 服务方法。我想发布第一个 Hello World 示例。我为 eclipse Juno 下载并安装了 WSO2 开发工作室。我按照以下步骤操作:
1- 新项目 ---> Jax-RS Web 服务
2- 我编写了以下类

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.core.Response;

@Path("/message")
public class servizio {

@GET
@Path("/{param}")
public Response printMessage(@PathParam("param") String msg) {

    String result = "Restful example : " + msg;

    return Response.status(200).entity(result).build();

    }
}


3- 我通过 wso2 函数保存并构建了 War 文件:将此项目导出为可部署存档
4- 我进入 WSO2 应用服务器 GUI --> 应用程序 ---> JAX-WS/JAX-RS ---> 上传我的战争档案。
5- WSO2 服务器通知我应用程序已成功上传并列在应用程序 --> 列表菜单中
6- 当单击“查找服务链接”时,我得到 HTTP 状态 404 - 请求的资源不可用。
即使我单击 WADL 链接,我也会得到相同的 404 响应:链接指向http://MyHostIP:9763/progettServizio_1.0.0/services/servizio?_wadl

重要提示:如果我在 WSO2 应用程序服务器 5.1 上安装相同的服务,该服务工作正常......所以我猜应该是 ESB 上的 Web 应用程序服务器激活有问题。我通过 ---> 配置 ---> 功能 ---> 安装 Web 应用程序服务器来完成此操作。


我想念什么吗?非常感谢。

4

2 回答 2

0

我尝试了你的场景并得到了同样的错误。发现这是因为当您从功能启用 AS 时缺少 cxf 运行时依赖项。这也将在下一个版本中修复。

现在,您可以手动将 cxf 依赖项添加到 ESB。为此,将runtimes文件夹从一个文件夹复制<AS_HOME>/lib到另一个<ESB_HOME>/lib文件夹。然后重新启动您的 ESB。

于 2013-08-16T09:25:57.950 回答
0

似乎您在这里缺少一些类加载,请参考 [1]

最简单的方法是使用 WSO2 Developer studio 来创建您的 JAX-RS 服务,请参阅 [2] 上的文档。

[1] http://docs.wso2.org/wiki/display/AS510/Webapp+ClassLoading

[2]。http://wso2.com/library/articles/2012/10/develop-cxf-based-jaxws-wso2-developer-studio

谢谢你,达沙那。

于 2013-08-18T16:55:42.717 回答