j2ee doc 翻譯系列之二 (2 完)
發(fā)表時間:2023-08-18 來源:明輝站整理相關軟件相關文章人氣:
[摘要]聲明:本文檔由freehero翻譯,未經(jīng)作者同意不能用于商業(yè)用途,您可以自由的復制和傳播,文檔只供您理解j2ee,因作者能力有限,建議您同時閱讀英文文檔,對于因為翻譯的錯誤代來的后果作者不負任何責任...
聲明:本文檔由freehero翻譯,未經(jīng)作者同意不能用于商業(yè)用途,您可以自由的復制和傳播,文檔只供您理解j2ee,因作者能力有限,建議您同時閱讀英文文檔,對于因為翻譯的錯誤代來的后果作者不負任何責任,歡迎您來信討論freehero@163.net(轉載請保留)
3。對于一個有很長的內容列表的組件連說,你有可能在打包的過程中遇到命令行的參數(shù)長度的限制
。避免的方法:把幫助的類加入到一個.jar庫文件中,然后把這個.jar文件加入到應用程序的.ear文件中
。
4。如果在一個含有ejb .jar文件的企業(yè)bean中有jndi名字,然后一個新的bean添加到這個同樣的
.jar文件中。jndi的名字數(shù)據(jù)可能丟失。解決的方法:盡量在指定jndi名字之前完成ejb .jar文件。
5。在新建一個ejb的向導的通用對話框中,類的名稱有可能丟失。丟失的情況發(fā)生在你后退然后前進
的動作中。
6。當你在核實的過程中新增文件的時候,有時候文件選擇的狀態(tài)有可能不正確。使用文件選擇器選
擇一個目錄后,你可能沒有新增正確的文件。解決的方法:通過在另外一個工具的中引用這個文件,來刷
新cache。例如:從file菜單,選擇add ejb jar到應用程序,click 取消,然后到核實的對話框中。
7。雜新增企業(yè)bean的響動中,如果選擇了錯誤的類,然后你回退選擇正確的項目,有時候這個選擇
的類的container-managed persistence屬性有可能不正確。解決的方法:或者重新啟動向導,或者選擇
另外一種類型的bean。
安全問題的bug
當用戶重新定向到基于窗體的對話框頁面的時候,如果沒有注冊(比如選擇了瀏覽器的back),于是
會被拒絕。解決的方法:從新啟動瀏覽器。
jsp的bug
在特定的條件下,server啟動的時候加載servlets有可能失敗。j2ee server啟動的時候可以加載一
個servlet并且調用這個servlet的init方法。但是結果是不可預料的。這些加載的servlets包括在
web.xml文件的<load-on-startup元素。
RMI-IIOP Bugs
1。如果你的jdk安裝了RMI-IIOP部分,j2ee將不能工作。解決的辦法是安裝一個干凈的jdk。
2。j2ee的客戶和server不能在基于IIOP1.0 協(xié)議的orb的產(chǎn)品中實現(xiàn)。
其他軟件的bug
1。在solaris平臺上,如果環(huán)境變量沒有包括setenv JIT_ARGS="bco=off",j2ee jit將會引起
cloudscape的失敗。
2。在切換j2ee server從non-recoverable的模式到recoverable模式之前,要注意首先運行
cleanup腳本。
3。運行j2ee,jdk是十分必要的。在一些系統(tǒng)中當安裝jdk是時候,用戶可以選擇stand-alone JRE的
模式。這樣的模式不能運行j2ee。另外一個問題是:如果jre的root設置成jdk的安裝目錄,錯誤有可能發(fā)
生。在這種情況下,當你運行的時候一切是好的,但是deploy的時候,會有如下錯誤:
java.rmi.RemoteException: Error processing ejb jar:access denied:
(java.io.FilePermission e:\testjava\lib\ext read)
4。當https服務沒有啟動的時候,j2ee server會打印一個錯誤,你可以忽略如果你不需要https。
5。在企業(yè)bean中,如果父類的參數(shù)或者返回值不是serializabl的,在父類中不要調用
deserialization。要確定所有的父類是serializable。
6。web組件的server.policy 文件和j2ee要符合。這個文件給出了
${com.sun.enterprise.home}/public_htm/ 下的權限。應用這個文件,遵從下面的步驟:
a:在lib/security/server.policy文件中,刪除下面的行:
grant codeBase "file:${com.sun.enterprise.home}/public_html/-" {
permission java.security.AllPermission;
}
b:替換刪除的行的內容如下:
grant codeBase "file:${com.sun.enterprise.home}/public_html/-" {
permission java.lang.RuntimePermission "loadLibrary.*";
permission java.lang.RuntimePermission "accessClassInPackage.*";
permission java.lang.RuntimePermission "queuePrintJob";
permission java.lang.RuntimePermission "modifyThreadGroup";
permission java.io.FilePermission "<<ALL FILES>>", "read,write";
permission java.net.SocketPermission "*", "connect";
// "standard" properies that can be read by anyone
permission java.util.PropertyPermission "*", "read";
// set the JSSE provider for lazy authentication of app. clients.
permission java.security.SecurityPermission "putProviderProperty.JSSE";
permission java.security.SecurityPermission "insertProvider.JSSE";
};