如何为在控制台应用程序中创建的Web服务生成war

时间:2013-11-28 16:48:03

标签: java eclipse maven jboss

我在Eclipse中创建了一个Web服务,它可以运行。我以这种方式发表了它:

public class MyPublisher{

    public static void main(String[] args) {

       Endpoint endpoint = Endpoint.publish("http://localhost:9900/ws/hi", new MyServiceImpl());
       System.out.println(endpoint.isPublished());

   }
}

事实是,我在控制台中将其作为“Java应用程序”运行,而不是作为“Web应用程序”运行。

我的应用程序是使用Maven的普通控制台应用程序。

我想要的是一个WAR,我可以在Jboss或任何其他应用服务器上部署并运行我的Web服务。

我该怎么做?如何从我的控制台应用程序生成它?

1 个答案:

答案 0 :(得分:0)

您正在做的是手动部署Web服务,然后通过main方法对其进行测试。

要在Web服务器中部署,您必须将服务端点实现类(简而言之,您的接口类及其实现类)以及所需的库和配置文件打包为war文件并在JBoss上部署服务器

war文件中需要的是以下基本内容

  1. WEB-INF /类/ COM /一些/包/ YourServiceInterface.class
  2. WEB-INF /类/ COM / mkyong / WS / YourServiceInterfaceImpl.class
  3. WEB-INF / web.xml
  4. WEB-INF / xml_configuration_files => 这可以是services.xml或sux-jaxws.xml或其他任何内容,具体取决于您使用的框架。
  5. WEB-INF / LIB / library_jars