簡體   English   中英

JBoss 7.1上的Java Web Application部署

[英]Java Web Application deployment on JBoss 7.1

我打算使用以下方法開發和部署一個簡單的Web應用程序

  1. EJB 3
  2. JSP和Servlet
  3. JBoss 7
  4. JPA

我已經編寫了應用程序的代碼,並創建了具有以下結構的標准耳朵

出現

| _ lib(帶有所有必需的jar,例如commons日志記錄)

| _ META-INF

   |_ application.xml

   |_ jboss-app.xml

| _ app_ejb.jar(包含無狀態EJB,實體,persistence.xml等。)

| _ app_web.war(jsps,servlet,web.xml等。)

jboss-app.xml :-(庫是應用程序名稱)

<!DOCTYPE jboss-app PUBLIC "-//JBoss//DTD J2EE Application 1.4//EN" "http://www.jboss.org/j2ee/dtd/jboss-app_4_0.dtd">
<jboss-app>
    <loader-repository>library:app=ejb3</loader-repository>
</jboss-app>

application.xml:-

<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd" version="1.4">

<display-name>library</display-name>

<module>
  <ejb>ejb_library.jar</ejb>
</module>

<module>
    <web>
        <web-uri>web_library.war</web-uri>
        <context-root>web_library</context-root>
    </web>
</module>

</application>

現在,當我使用JBoss 7的管理控制台部署此功能時,似乎已經部署了Web模塊,即使頁面被點擊也是如此。 但是,我嘗試在servlet中注入EJB(作為使用@EJB的實例變量)的應用程序的另一部分失敗了。

我部署應用程序的方式似乎存在一些問題。

我試圖找到一個教程,可以在JBoss中部署該應用程序,但是在此之前,我一直堅持不懈。

有人可以指導我嗎? 我是第一次使用JBoss,但並不完全了解JBoss的特定配置。

您要注入的EJB,它是否在實現接口? 該接口是否已在服務器上注冊? @Local或@Remote。

如果不是,請嘗試引入@Local接口,然后嘗試實現該接口的EJB實現。 然后,使用該本地接口注入EJB實現。

另外,檢查以下線程;

JBoss 6:將EJB注入servlet

將EJB注入JAX-RS(RESTful服務)

http://docs.jboss.org/ejb3/docs/tutorial/1.0.0/html/Injecting_EJB_in_Servlets.html

愚蠢的想法,但是您可以在application.xml中重新排列模塊聲明嗎? 首先將Web模塊引入,然后將ejb引入。

  • 模塊-> Web模塊
  • 模塊-> ejb模塊

此外,這也與您的情況有關: http : //docs.jboss.org/jbossas/docs/Server_Configuration_Guide/4/html/ch01s04s02.html

暫無
暫無

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

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