首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Lomboz 中配置 JBoss 4.0.1 完整指南:server 定義文件詳解與實戰調試

     編輯:Java 相關知識

背景與問題

在 Eclipse 環境下使用 Lomboz 開發 EJB 時,原有的 jboss400.server 配置僅適用於 JBoss 4.0.0。升級至 JBoss 4.0.1 或 4.0.1 SP1 後,必須使用對應的 jboss401.server 定義文件,否則無法正確啟動應用服務器、部署模塊或建立 JNDI 連接。本文提供完整的配置文件內容,並說明關鍵路徑的修改要點。

完整的 jboss401.server 定義文件

將以下內容保存為 jboss401.server,放置於 Lomboz 的 server 定義目錄(通常為 eclipse/plugins/org.objectweb.lomboz.server.core_*/servers/):

<SERVERDEFINITION name="JBOSS 4.0.1" earmodules="true" webmodules="true" ejbmodules="true">
  <property id="serverRootDirectory" type="directory" label="Application Server Directory:" default="I:/Software/jboss-4.0.1"/>
  <property id="serverAddress" type="string" label="Address:" default="127.0.0.1"/>
  <property id="serverPort" type="string" label="Port:" default="8080"/>
  <property id="serverConfig" type="string" label="Server Configuration (minimal/default/all):" default="default"/>
  <property id="classPathVariableName" type="string" label="Classpath Variable Name:" default="JBOSS4.0.1"/>
  <property id="classPath" type="directory" label="Classpath Variable:" default="I:/Software/jboss-4.0.1"/>
  <SERVERHOME>${serverRootDirectory}</SERVERHOME>
  <WEBMODULESDEPLOYDIRECTORY>${serverRootDirectory}/server/${serverConfig}/deploy</WEBMODULESDEPLOYDIRECTORY>
  <EJBMODULESDEPLOYDIRECTORY>${serverRootDirectory}/server/${serverConfig}/deploy</EJBMODULESDEPLOYDIRECTORY>
  <EARMODULESDEPLOYDIRECTORY>${serverRootDirectory}/server/${serverConfig}/deploy</EARMODULESDEPLOYDIRECTORY>
  <JNDIINITIALCONTEXTFACTORY>org.jnp.interfaces.NamingContextFactory</JNDIINITIALCONTEXTFACTORY>
  <JNDIPROVIDERURL>jnp://${serverAddress}:1099</JNDIPROVIDERURL>
  <STARTCLASS>org.jboss.Main</STARTCLASS>
  <STARTWORKINGDIRECTORY>${serverRootDirectory}/bin</STARTWORKINGDIRECTORY>
  <STARTVMPARAMETERS>-Dprogram.name=run.bat -Djava.endorsed.dirs=${serverRootDirectory}/bin/../lib/endorsed -Xms128m -Xmx512m</STARTVMPARAMETERS>
  <STARTPROGRAMARGUMENTS>-c ${serverConfig}</STARTPROGRAMARGUMENTS>
  <STOPCLASS>org.jboss.Shutdown</STOPCLASS>
  <STOPWORKINGDIRECTORY>${serverRootDirectory}/bin</STOPWORKINGDIRECTORY>
  <STOPVMPARAMETERS>-cp ${classPathVariableName}/bin/shutdown.jar -Djboss.boot.loader.name=shutdown.bat</STOPVMPARAMETERS>
  <STOPPROGRAMARGUMENTS>-S</STOPPROGRAMARGUMENTS>
  <SERVERCLASSPATH>
    <JAR type="variable">JDK_TOOLS</JAR>
    <JAR type="variable">${classPathVariableName}/bin/run.jar</JAR>
  </SERVERCLASSPATH>
  <CLIENTCLASSPATH>
    <JAR type="variable">${classPathVariableName}/client/jboss-j2ee.jar</JAR>
    <JAR type="variable">${classPathVariableName}/client/jnp-client.jar</JAR>
    <JAR type="variable">${classPathVariableName}/client/jbossall-client.jar</JAR>
    <JAR type="variable">${classPathVariableName}/client/jboss-common-client.jar</JAR>
    <JAR type="variable">${classPathVariableName}/client/jbosssx-client.jar</JAR>
    <JAR type="variable">${classPathVariableName}/client/log4j.jar</JAR>
    <JAR type="variable">${classPathVariableName}/server/default/lib/jnpserver.jar</JAR>
  </CLIENTCLASSPATH>
  <PROJECTCLASSPATH>
    <JAR type="variable">JDK_TOOLS</JAR>
    <JAR type="variable">${classPathVariableName}/bin/run.jar</JAR>
    <JAR type="variable">${classPathVariableName}/bin/shutdown.jar</JAR>
    <JAR type="variable">${classPathVariableName}/client/jboss-j2ee.jar</JAR>
    <JAR type="variable">${classPathVariableName}/server/${serverConfig}/lib/javax.servlet.jar</JAR>
    <JAR type="variable">${classPathVariableName}/lib/jboss-system.jar</JAR>
    <JAR type="variable">${classPathVariableName}/lib/concurrent.jar</JAR>
    <JAR type="variable">${classPathVariableName}/server/${serverConfig}/lib/jboss.jar</JAR>
    <JAR type="variable">${classPathVariableName}/server/${serverConfig}/lib/jnpserver.jar</JAR>
    <JAR type="variable">${classPathVariableName}/server/${serverConfig}/lib/jpl-pattern.jar</JAR>
    <JAR type="variable">${classPathVariableName}/server/${serverConfig}/lib/jpl-util.jar</JAR>
    <JAR type="variable">${classPathVariableName}/server/${serverConfig}/lib/jboss-transaction.jar</JAR>
    <JAR type="variable">${classPathVariableName}/server/${serverConfig}/lib/bcel.jar</JAR>
  </PROJECTCLASSPATH>
  <WEB><DEPLOY><UNDEPLOY></UNDEPLOY></DEPLOY></WEB>
  <EJB><DEPLOY><UNDEPLOY></UNDEPLOY></DEPLOY></EJB>
  <EAR><DEPLOY><UNDEPLOY>
    <WEBMODULE><DEPLOY><UNDEPLOY></UNDEPLOY></DEPLOY></WEBMODULE>
    <EJBMODULE><DEPLOY><UNDEPLOY></UNDEPLOY></DEPLOY></EJBMODULE>
  </UNDEPLOY></DEPLOY></EAR>
</SERVERDEFINITION>

關鍵配置項修改指引

屬性 ID含義修改建議
serverRootDirectoryJBoss 安裝根目錄改為實際安裝路徑,如 D:/java/jboss-4.0.1
serverAddress綁定 IP 地址本機測試用 127.0.0.1,集群/遠程需改為具體 IP
serverPortHTTP 端口默認 8080,衝突時修改
serverConfigServer 配置集可選 minimal/default/all,生產常用 default
classPathVariableName類路徑變量名建議與 JBoss 版本對應,如 JBOSS_401
classPath類路徑變量值同 serverRootDirectory

也可在 Eclipse 中通過 Window → Preferences → Lomboz → Server → Server Definitions 圖形化修改上述路徑,無需手動編輯 XML。

驗證與常見問題

  1. 啟動驗證:在 Servers 視圖中右鍵選擇 "JBOSS 4.0.1" → Start,Console 無錯誤且顯示 Started in xxx ms 即成功。
  2. 部署測試:建立簡單 EJB/Web 模塊,Add to Server 後發布,訪問 https://localhost:8080/your-app 驗證。
  3. JNDI 端口:注意 JNDIPROVIDERURL 使用 1099 端口(非 HTTP 8080),防火牆需放行。
  4. 內存參數:-Xms128m -Xmx512m 視項目規模調整,大型項目建議 -Xms512m -Xmx1024m 以上。
  5. 端衝突:若 8080/1099 被佔用,修改 JBoss server/default/deploy/jboss-web.deployer/server.xml 與 conf/jboss-service.xml 中對應端口,並同步更新此處配置。

適用版本說明

此配置經 JBoss 4.0.1 GA 及 4.0.1 SP1 測試通過。若升級至 JBoss 4.0.2+ 或 4.2.x,部署目錄結構、JAR 包名稱、啟動類均有變化,需參考對應版本文檔重新製作 server 定義文件。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved