如何将Dukescript Jersey Based Server部署到生产环境?

时间:2016-07-09 13:00:25

标签: jboss jersey wildfly web-deployment dukescript

我正在根据CRUD with JerseyFaces中的“”尝试使用Dukescript,我意识到通过构建网络模块的时间是生成的。

您如何建议我可以将我的Web应用程序部署到Wildfly应用程序服务器或JBoss AS 7.1?

1 个答案:

答案 0 :(得分:1)

DukeScript网站上有一个教程,可以完全满足您的需求。我在这里复制相关部分(因为我是教程的作者)和参考链接: 我正在使用NetBeans 8.0.2和最新版本的DukeScript插件和WildFly 8.2.0。我假设您已经使用CRUD Archetype创建了一个项目。

我们的Jersey示例的目的是展示如何通过JSON消息与服务器进行交互。因此,服务器模块的唯一目的是回答客户端的请求。对于更传统的设置,您只需创建一个更传统的Web项目,例如使用Maven Web应用程序项目模板。

在父项目中,右键单击“模块”,然后从上下文菜单中选择“创建新模块”。在弹出的向导中选择“Maven - > Web应用程序”。在第二步中,您可以选择服务器。在这里选择Wildfly。如果它不在下拉列表中,请单击“添加”并将其指向Wildfly目录。然后确认设置并完成向导。

现在使用“新 - >网络服务 - >来自模式的Restful WebService“并创建一个Singleton Web服务。只需配置Web服务项目即可。您可以删除之后创建的类。现在将以下类添加到项目中:

@javax.ws.rs.ApplicationPath("webresources")
public class ApplicationConfig extends Application {

    @Override
    public Set<Class<?>> getClasses() {
        Set<Class<?>> resources = new java.util.HashSet<>();
        addRestResourceClasses(resources);
        return resources;
    }

    /**
     * Do not modify addRestResourceClasses() method.
     * It is automatically populated with
     * all resources defined in the project.
     * If required, comment out calling this method in getClasses().
     */
    private void addRestResourceClasses(Set<Class<?>> resources) {
        resources.add(fully.qualified.path.to.ContactsResource.class);
    }

}

现在将ContactsResource复制到新项目并删除旧服务器项目。确保将具有“Shared Client Server Data Structures”的项目添加为依赖项,以便您可以再次重用数据模型。如果您正在使用NetBeans,您现在将在IDE中的“Restful Web Services Node”下看到ContactsResource。就是这样,您现在可以启动服务器并将客户端指向这个更传统的Web应用程序。

https://dukescript.com/best/practices/2015/08/26/CRUD-Example-with-Wildfly.html