当前位置: 首页 > 知识库问答 >
问题:

将基于JSF 1.2的web应用程序部署到JBoss EAP 7.0

缪朝
2023-03-14

我有一个基于JSF 1.2的web应用程序。JSF JAR打包在WAR库中。我们尝试在JBoss EAP 7.0中部署war,war成功部署,但应用程序未运行。

我发现JBoss EAP 7.0不支持JSF 1.2。我的web应用程序不是JSF 2.0投诉。如果有人能列出这样做的步骤,那将大有裨益。

谢谢

共有2个答案

萧飞
2023-03-14

实际上,这种组合在JBOSS 7.1.5服务器的EAP 7版本上对我很有效。这样我就可以加载jsf1了。我的WEB-INF/lib文件夹中有2个JAR,而不是JBOSS 7.1.5提供的JAR。我有一个EAR文件,里面有WAR文件。

网状物xml:

 <context-param>  
        <param-name>org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL</param-name>  
        <param-value>true</param-value>  
 </context-param>  

入耳式META-INF/jboss部署结构。xml

<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
 <ear-subdeployments-isolated>true</ear-subdeployments-isolated>
    <deployment>
        <exclusions>
            <module name="javax.faces.api" slot="main" />
            <module name="com.sun.jsf-impl" slot="main" />
        </exclusions>
    </deployment>


    <sub-deployment name="yourwarfilename.war">
        <exclusions>
            <module name="javax.faces.api" slot="main" />
            <module name="com.sun.jsf-impl" slot="main" />
        </exclusions>
    </sub-deployment>
</jboss-deployment-structure>
翟冷勋
2023-03-14

请尝试以下步骤:

>

  • 添加部署结构。xml到您的项目(WEB-INF/jboss-deployment-structure.xml到WAR或META-INF/jboss-deployment-structure.xml到EAR),但不包括:

        <exclusions>
            <module name="javax.faces.api" slot="main" />
            <module name="com.sun.jsf-impl" slot="main" />
            <module name="org.jboss.as.jsf-injection" slot="main" />
        </exclusions>
    

    导入pom中的所有依赖项。jsf所需要的xml。就像这样:

    <dependency>
        <groupId>javax.faces</groupId>
        <artifactId>jsf-api</artifactId>
        <version>1.2-b19</version>
    </dependency>
    <dependency>
        <groupId>javax.faces</groupId>
        <artifactId>jsf-impl</artifactId>
        <version>1.2-b19</version>
    </dependency>
    <dependency>
        <groupId>com.sun.facelets</groupId>
        <artifactId>jsf-facelets</artifactId>
        <version>1.1.11</version>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.1.0</version>
    </dependency>
    

  •  类似资料:
    • 我有一个Java web应用程序,在我的jar文件中嵌入了Tomcat。我可以用Docker容器化应用程序,并用命令java-jar-myapp.jar运行它,但我不能在Heroku中运行那个容器。我尝试使用heroku CLI进行dockerize和部署,但heroku给了我一个“无法访问jarfile”的错误。 我试图通过使用heroku deploy:jar部署我的fat jar来解决这个问

    • 我想将一个Angular应用程序部署到一个Azure静态Web应用程序.构建部分工作正常,但发布错误并说它找不到构建项目:目录位置:'dist'无效。无法检测到此目录。请验证您的部署配置文件是否反映了您的存储库结构。 这是用于发布应用程序的YAML,下面是屏幕截图。 静态Web App模板 因此,似乎我们没有使用正确的发布位置,但不确定使用什么。 以下是来自管道的 YAML: 构建的安格应用程式的

    • 是否有更好的方法使用Azure DevOps而不是不可变映像将web应用程序(托管在IIS windows上)部署到Azure Scaleset?我假设对于每次部署,如果管道需要创建映像,那么创建映像和部署将花费太多时间,尤其是在需要部署热修复程序的情况下。 如果部署组使用azure Scaleset,是否有人尝试过?

    • 问题内容: 我正在尝试在Heroku上使用Flask开发我的第一个“大型”应用程序,并尝试将此处的基本教程与以下说明结合:https : //devcenter.heroku.com/articles/python与以下说明:http:// flask.pocoo.org/docs/patterns/packages/#larger- applications。它在本地与“先行启动”一起工作,但是

    • 我正在使用日食EE朱诺版。我创建了一个动态Web应用程序,该应用程序使用亚马逊简单数据库并停用一些值并向用户显示。我已经安装了使用亚马逊服务的AWS工具包。 我有一个simpleDB账户。 我试着把它部署到AWS Elastic Beanstalk上(通过插件)。它显示我选择服务器。我选择它作为AW豆茎与TOmcat 6(亚太东京)。 一段时间后,它会给出这个错误。 无法将应用程序上传到 Amaz

    • 如何使用VSTS版本将war文件部署到运行Tomcat的Azure Web应用程序?我在VSTS设置中有一个CI/CD管道,在提交代码时进行构建,然后在构建完成时发布新的war文件并将其推送到Azure。问题是,war文件被部署到\site\wwwroot\webapps,而不是\site\wwwroot\bin\apache-tomcat-8.5.24\webapps,需要将其作为应用程序拉入t