J2EE設置向導(2)
發表時間:2024-06-19 來源:明輝站整理相關軟件相關文章人氣:
[摘要]7、事務 你可以編輯config/default.properties 文件控制事務發生和超時設置。distributed.transaction.recovery 屬性這個屬性控制分布事物是否發生。這些事物可以發生的話,下面的條件必須滿足: 跨庫操作時的事物范圍。 J2EE程序通過jdbc...
7、事務
你可以編輯config/default.properties 文件控制事務發生和超時設置。distributed.transaction.recovery 屬性這個屬性控制分布事物是否發生。這些事物可以發生的話,下面的條件必須滿足:
跨庫操作時的事物范圍。
J2EE程序通過jdbc2.0 JTA驅動訪問數據庫
當故障發生的時候,事物的各個的組成部分可以按照符合兩段提交協議的方式提交或回滾。
事物發生的時候,server重新啟動后事物可以提交或回滾。
distributed.transaction.recovery的值為true或者false。J2EE安裝后默認為false。
distributed.transaction.recovery=false
transaction.time屬性
在應用container-managed 事物的ejb中,你可以控制事物超時的間隔通過設置transaction.timeout的值。例如:
transaction.timeout=5
在設置以后,如果事物在5秒內沒有完成,J2EE事物管理器將回滾它。當J2EE第一次安裝的時候,timeout的值時0代表沒有超時。
只有使用container-managed 管理事物的ejb受到timeout的影響。至于在bean-managed和JTA transactions 中你可以引用 UserTransaction 的 setTransactionTimeout方法。同時你也可以在其他組建中引用setTransactionTimeout方法:比如servlets和jsp。
8、端口
J2EE需要tcp/ip端口。修改config目錄下的相應文件可以修改端口號。下表是端口號和相應的文件。
EJB 9191 ejb.properties http.port=9191
HTTP 8000 web.properties port=8000
HTTPS 7000 web.properties https.port=7000
Naming and Directory 1050 orb.properties port=1050
9191 端口用于提供client下載需要的stub類
8000 提供http服務
7000 提供https服務
1050 基于orb的jndi名字服務使用的端口
9、日志文件
J2EE server有幾個日志文件。默認這些文件在logs目錄下。編輯config/default.properties 文件中的 log.directory 屬性可以更改默認目錄。
log.directory=logs
同時你也可以編輯default.properties 文件更改日志文件的名字。例如:你可以修改log.output 屬性的值來修改the output.log 文件的名字。
一般來說,日志文件決定于啟動J2EE的模式。(single還是multiple VM (virtual machine) 模式) Single VM 日志文件默認的情況是Single VM 模式。在這種情況下,日志文件位于
$J2EE_HOME///ejb
logs是在default.properties 文件中log.directory 屬性指定的。host元素是計算機名稱。生成下列文件。
system.out
system.err
event.log
output.log
error.log
system.out 和system.err文件包括ejb中 System.out 和 System.err的輸出。如果你運行J2EE -verbose數,輸出被寫到stdout(標準輸出) 和stderr(標準錯誤。輸出)。system.out 和 system.err日志文件不建。只有config/auth.properties 文件中audit屬性值為true時audit.lo才創建。
Multiple VM 日志
如果你用J2EE -mutiVM啟動server,ejb和http服務在自己的虛擬機以單獨的服務啟動。每一個depploy的應用程序也在自己的虛擬機中運行。日志文件和上述的一樣,但是存放的目錄不同。目錄如下:
EJB $J2EE_HOME//ejb/ejbd
HTTP $J2EE_HOME//ejb/httpd
deployed application $J2EE_HOME//ejb/
web server日志
編輯web.properties文件中的內容,可以改變由web server創建的日志文件的名字。
10、安全
未授權用戶
對于J2EE來說,當有未授權的用戶試圖調用ejb container的時候,J2EE必須存在一般意義上的未授權用戶存在。在J2EE中這個用戶名字是guest,密碼是guest123。你可以在auth.properties 文件中修改用戶名和密碼。
default.principal.name=guest
default.principal.password=guest123
Keystore密碼
如果用戶使用公鑰訪問https,認證信息放在/.keystore 文件中。同時user-home是System.getProperty("user.home")的返回值。keystore是一個典型的密碼文件。默認的密碼是changeit。可以在web.properties 文件中修改keystore.password 屬性的值來改變密碼。
ANYONE 角色
在application deployment工具的security面板中,默認的情況下方法分配給ANYONE 角色。這樣的結果 是所有的用戶和組都可以調用它。如果你沒有影射到一個特定的角色,每一個用戶和用戶都可以調用它。可以在auth.properties 文件中設置anyone.role.name 的值來改變默認anyone角色。
鈍化發生的條件:內存限制
當ejb container開始鈍化一個ejb的時候,它把ejb保存在附屬存儲中并且試圖重新分配內存。默認的情況下,如果內存使用超過128m的時候鈍化開始發生。可以編輯config/default.properties 文件中passivation.threshold.memory 屬性的值來修改默認值。
passivation.threshold.memory=128000000
值必須是一個正的整數。當你減少這個值的時候鈍化現象回經常發生。
jndi name server host
如果jndi name server和J2EE server不在同一個機器上,你必須改變config/orb.properties 文件中host屬性的值。
host=localhost
HTTP 文檔根
默認的情況下,http和https服務的文檔是public_html。你可以編輯web.properties 文件中documentroot屬性的值來改變它。
documentroot=public_html/