簡體   English   中英

Jboss接縫到Tomcat的遷移

[英]Jboss seam to Tomcat migration

我有一個在JBOSS EAP 5上運行的舊應用程序。我想將此應用程序隔離在一個獨立於任何容器運行的.war文件中,因此我可以將其放在Tomcat或Wildfly 10服務器上,而不必更改代碼和依賴項。

我已經成功添加了所有Maven依賴項,並且應用程序啟動,但是當我嘗試打開任何頁面時,EJB Bean實例化都會出現異常。 看起來應用程序無法通過JNDI找到Bean:

HTTP Status 500 - Name [ativa/UsuarioService/local] is not bound in this Context. Unable to find [ativa].

但是,當應用程序加載時,我在日志中有此消息:

INFO [localhost-startStop-1] (Component.java:237) - Component: usuarioService, scope: STATELESS, type: STATELESS_SESSION_BEAN, class: br.gov.cgu.ativa.service.usuario.UsuarioService, JNDI: ativa/UsuarioService/local

這意味着正在使用正確的JNDI名稱創建組件UsuarioService,但是在加載的上下文中找不到它。

我認為我非常接近使該應用程序獨立,但是我缺少了一些東西。 有人可以幫忙嗎?

謝謝。

web.xml中:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <context-param>
        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
        <param-value>server</param-value>
    </context-param>
    <context-param>
        <param-name>org.richfaces.SKIN</param-name>
        <param-value>ativa</param-value>
    </context-param>
    <context-param>
        <param-name>org.richfaces.CONTROL_SKINNING</param-name>
        <param-value>disable</param-value>
    </context-param>
    <context-param>
        <param-name>org.richfaces.CONTROL_SKINNING_CLASSES</param-name>
        <param-value>disable</param-value>
    </context-param>
    <context-param>
        <param-name>org.richfaces.LoadStyleStrategy</param-name>
        <param-value>ALL</param-value>
    </context-param>
    <context-param>
        <param-name>org.richfaces.LoadScriptStrategy</param-name>
        <param-value>ALL</param-value>
    </context-param>
    <context-param>
        <param-name>facelets.DEVELOPMENT</param-name>
        <param-value>true</param-value>
    </context-param>
    <context-param>
        <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
        <param-value>.xhtml</param-value>
    </context-param>
    <context-param>
        <param-name>facelets.LIBRARIES</param-name>
        <param-value>/WEB-INF/tags/cgu.taglib.xml</param-value>
    </context-param>
    <context-param>
        <param-name>com.sun.faces.numberOfViewsInSession</param-name>
        <param-value>3</param-value>
    </context-param>
    <context-param>
        <param-name>com.sun.faces.numberOfLogicalViews</param-name>
        <param-value>3</param-value>
    </context-param>
    <context-param>
        <param-name>com.sun.faces.compressViewState</param-name>
        <param-value>true</param-value>
    </context-param>
    <context-param>
        <param-name>org.ajax4jsf.COMPRESS_SCRIPT</param-name>
        <param-value>true</param-value>
    </context-param>
    <context-param>
        <param-name>org.ajax4jsf.COMPRESS_STYLE</param-name>
        <param-value>true</param-value>
    </context-param>
    <context-param>
        <param-name>com.ibm.ws.jsf.LOAD_FACES_CONFIG_AT_STARTUP</param-name>
        <param-value>true</param-value>
    </context-param>
    <context-param>
        <param-name>com.sun.faces.expressionFactory</param-name>
        <param-value>org.jboss.el.ExpressionFactoryImpl</param-value>
    </context-param>

    <filter>
        <filter-name>Seam Filter</filter-name>
        <filter-class>org.jboss.seam.servlet.SeamFilter</filter-class>
        <init-param>
            <param-name>createTempFiles</param-name>
            <param-value>false</param-value>
        </init-param>
        <init-param>
            <param-name>maxRequestSize</param-name>
            <param-value>104857600</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>Seam Filter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>


    <listener>
        <listener-class>org.jboss.seam.servlet.SeamListener</listener-class>
    </listener>

    <servlet>
        <servlet-name>Document Store Servlet</servlet-name>
        <servlet-class>org.jboss.seam.document.DocumentStoreServlet</servlet-class>
    </servlet>

    <servlet>
        <servlet-name>Seam Resource Servlet</servlet-name>
        <servlet-class>org.jboss.seam.servlet.SeamResourceServlet</servlet-class>
    </servlet>

    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet>
        <display-name>Apache-Axis Servlet</display-name>
        <servlet-name>AxisServlet</servlet-name>
        <servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
    </servlet>

    <servlet>
        <display-name>Axis Admin Servlet</display-name>
        <servlet-name>AdminServlet</servlet-name>
        <servlet-class>org.apache.axis.transport.http.AdminServlet</servlet-class>
        <load-on-startup>100</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>Seam Resource Servlet</servlet-name>
        <url-pattern>/seam/resource/*</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.seam</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>Document Store Servlet</servlet-name>
        <url-pattern>*.csv</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>AxisServlet</servlet-name>
        <url-pattern>/servlet/AxisServlet</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>AxisServlet</servlet-name>
        <url-pattern>*.jws</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>AxisServlet</servlet-name>
        <url-pattern>/services/*</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>AdminServlet</servlet-name>
        <url-pattern>/servlet/AdminServlet</url-pattern>
    </servlet-mapping>

    <session-config>
        <session-timeout>31</session-timeout>
    </session-config>

    <welcome-file-list>
        <welcome-file>/index.html</welcome-file>
    </welcome-file-list>

    <jsp-config>
        <taglib>
            <taglib-uri>/birt.tld</taglib-uri>
            <taglib-location>/WEB-INF/tags/birt.tld</taglib-location>
        </taglib>
    </jsp-config>

    <security-constraint>
        <display-name>Restrict Documents</display-name>
        <web-resource-collection>
            <web-resource-name>Todos os recursos</web-resource-name>
            <url-pattern>/</url-pattern>
        </web-resource-collection>
        <user-data-constraint>
            <transport-guarantee>CONFIDENTIAL</transport-guarantee>
        </user-data-constraint>
    </security-constraint>

    <security-constraint>
        <display-name>Restrict raw XHTML Documents</display-name>
        <web-resource-collection>
            <web-resource-name>XHTML</web-resource-name>
            <url-pattern>*.xhtml</url-pattern>
        </web-resource-collection>
        <auth-constraint/>
    </security-constraint>

    <login-config>
        <auth-method>BASIC</auth-method>
    </login-config>

</web-app>

components.xml中

<?xml version="1.0" encoding="UTF-8"?>
<components xmlns="http://jboss.com/products/seam/components"
            xmlns:core="http://jboss.com/products/seam/core" xmlns:persistence="http://jboss.com/products/seam/persistence"
            xmlns:security="http://jboss.com/products/seam/security"
            xmlns:transaction="http://jboss.com/products/seam/transaction"
            xmlns:web="http://jboss.com/products/seam/web" xmlns:mail="http://jboss.com/products/seam/mail"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:async="http://jboss.com/products/seam/async"
            xsi:schemaLocation="http://jboss.com/products/seam/core http://jboss.com/products/seam/core-2.1.xsd http://jboss.com/products/seam/persistence http://jboss.com/products/seam/persistence-2.1.xsd                   http://jboss.com/products/seam/drools http://jboss.com/products/seam/drools-2.1.xsd                  http://jboss.com/products/seam/bpm http://jboss.com/products/seam/bpm-2.1.xsd                  http://jboss.com/products/seam/security http://jboss.com/products/seam/security-2.1.xsd                  http://jboss.com/products/seam/mail http://jboss.com/products/seam/mail-2.1.xsd                  http://jboss.com/products/seam/excel http://jboss.com/products/seam/excel-2.1.xsd                  http://jboss.com/products/seam/components http://jboss.com/products/seam/components-2.1.xsd                  http://jboss.com/products/seam/transaction http://jboss.com/products/seam/transaction-2.1.xsd http://jboss.com/products/seam/web http://jboss.com/products/seam/web-2.1.xsd">

    <core:init debug="true" jndi-pattern="@jndiPattern@" auto-create="true" />

    <core:manager concurrent-request-timeout="10000"
                  conversation-id-parameter="cid" conversation-timeout="180000"
                  default-flush-mode="MANUAL" parent-conversation-id-parameter="pid" />

    <persistence:managed-persistence-context name="entityManager" auto-create="true" entity-manager-factory="#{entityManagerFactory}" />
    <persistence:entity-manager-factory name="entityManagerFactory" persistence-unit-name="ativa" />
    <transaction:entity-transaction entity-manager="#{entityManager}"/>

    <async:quartz-dispatcher/>

    <security:identity  authenticate-method="#{loginController.login()}" />

    <mail:mail-session host="localhost" port="25" ssl="false" tls="false"  />  


</components>

BSB男子(br.gov.cgu。*),

嘗試更改JNDI名稱-> java:comp / env / ativa / UsuarioService / local而不是ativa / UsuarioService / local

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM