① 如何解決weblogic server side request forgery
由於操作系統、瀏覽器、資料庫、JVM採用的字元集都不一樣局消,基於WeblogicServer開發的應用經常出現中文顯示亂碼問題,其實在WeblogicServer上運行的WEB應用有州胡很多與字元集有關的設置,下面做一個總結,為了正確處理中文,最好把這些設置都設上。1.在jsP文件頭加入<!--pagecontentType="text/html;charset=GBK"--指定該JSP採用的字元集。2.在Weblogic.XML文件的中加入:encodingGBK指定JSP文件中採用的字元集,在JSP文件中的<!--pagecontentType="text/html;charset=GBK"--會覆蓋該設置3.在Weblogic.xml文件的中加入compilerSupportsEncodingtrue如果桐跡知為TRUE,指定在編譯JSP文件時,採用在JSP文件中定義的
② 如何修改weblogic指定的編碼方式
對於埠號的修改我想LS已帶數經說得很清楚不用多說了;我這補充下你問的第二個問題,就是字元集的問題。
字元集設置分很多種,關鍵看系統統一規范定義用那一種字元集,我這假設你用的是GBK這種字元集作為統一編碼,畝姿那麼分一下常用的情況:
1、如果JSP文件中寫死的中文,在weblogic中發布後,不能正確編譯,一般使用在weblogic.xml文件中增加一個(WebLogic.xml很多,你可以在你的工程的WEB-INF下增加一個自己的也可以,它的優先順序也是最高的,只要按照統一規范去編寫這個XML文件),如果是有些自帶的,你可以查看下裡面有沒有jsp-descriptor項,如果沒有就手動加,如果有,就加內容就行了:
<jsp-descriptor
<jsp-param
<param-namecompilerSupportsEncoding</param-name
<param-valuetrue</param-value
</jsp-param
<jsp-param
<param-nameencoding</param-name
<param-valueGBK<迅行絕/param-value
</jsp-param
</jsp-descriptor
2、如果跟蹤到從資料庫讀取出來是亂碼,資料庫是採用GBK編碼的,那麼在weblogic啟動時增加項:Weblogic.codeset=GBK
3、如果數據是通過response傳送中出現亂碼(如ajax調用、頁面位元組輸出、內容輸出,這種在windows下一般不會遇到,移植系統的時候可能會遇到),此時在你web.xml的<web-app</web-app中間加入:
<context-param
<param-nameweblogic.httpd.inputCharset./*</param-name
<param-valueGBK</param-value
</context-param
4、中文寫死的內容可以正確編譯,但是在weblogic上發布上去是亂碼,一般在頁面上寫出:
<%@ page contentType="text/html; charset=GBK" %
5、如果是因為本機非中文操作系統,或者本機瀏覽器默認是英文,導致無法正確顯示中文;那麼此時在JSP界面上寫上:
③ linux下weblogic10項目部署報錯
Truncated. see log file for complete stacktrace
> 08點46分9秒 CST> <Notice> <WebLogicServer> <BEA-000365> <Server sta
te changed to08點46分9秒 CST> <Error> <WebLogicServer> <BEA-000383> <A critical
service faile08點46分9秒 CST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to FORCE_SHUTTING_DOWN>
包問題
轉自網路
問題一:
調用介面,報java.lang.NoSuchMethodError: javax.jws.WebService.portName()Ljava/lang/String 異常。
問題一原因:
經過在網上google+,找到了問題所在,原因是weblogic裡面用到包%WL_HOME%\server\lib
\weblogic.jar裡面有javax.jws.WebService這個類,版本跟xfire裡面用到的包xfire-jsr181-api-
1.0-M1.jar裡面的類javax.jws.WebService版本不一致,而運行時默認優先載入的是weblogic.jar裡面的類,所以引
起沖突。
問題一解決方法:
把xfire的包xfire-jsr181-api-1.0-M1.jar復制到%WL_HOME%\server\lib\目錄下,並且修改配置文件%WL_HOME%\common\bin\commEnv.cmd(linux下修改commEnv.sh)。
找到SET WEBLOGIC_CLASSPATH=
這行,把%WL_HOME%\server\lib\xfire-jsr181-api-1.0-M1.jar加在%WL_HOME%\server
\lib\weblogic.jar前面,然後保存。重啟weblogic問題一解決。
問題二:
問題一解決後以為萬事大吉了,誰知調用介面時,新的問題來了。報:
java.lang.UnsupportedOperationException
at weblogic.xml.stax.XMLStreamReaderBase.getTextCharacters(XMLStreamRead
erBase.java:487)
問題二原因:
找了半天沒找到真正原因,只知道大家都說介面返回是byte[]就會出現以上異常。
問題二解決方法:
這是個不完美的解決方法,需要更改介面,把byte[]用base64進行編碼,編碼後byte[]變成了String,然後客戶端收到String後用
base64解碼成byte[]。異常不再出現,成功將文件通過webservice傳輸到客戶端。希望有高人提出更好的解決方法供大家討論。
④ weblogic項目,引用時間控制項WdatePicker.js;日期出現中文亂碼;
你的*.js文件的字元編碼格式與你項目或者pageEncoding不符合,你可以通過用Dreamweaver打開你的.js文件,然後按「Ctrl + J」 來查看和修改你的*.js文件。建議直接修改為UTF-8(選中『包括Unicode簽名(BOM)』然後保存)。
⑤ weblogic下生僻字「䶮」亂碼問題,跪求大神解決啊,萬分感激。。。
感覺不是生僻字的問題,而是編碼格式的問題
寫入txt 是不是使用了utf-8編碼格式?
⑥ weblogic的.bash_profile和file.encoding都是UTF-8,為啥從weblogic應用服務上發出去的還是亂碼
你可以修改weblogic.xml 和螞胡你的頁面的編碼保持一致。前鏈 weblogic.xml 路徑在工程的WEB-INF下,放在你的web.xml的同慧物孫一個地方。沒有可以新建。
<?xml version="1.0" encoding="UTF-8"?>
<weblogic-web-app>
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
</weblogic-web-app>
⑦ 在linux服務上怎麼將weblogic默認的utf-8字元集改成gbk
可以在啟動腳本文件裡面加:LANG=....gbk
⑧ BIRT Char中文亂碼問題
先看看你的代碼裡面的是什麼字元,再看看頁面是什麼字元,兩個一定要培讓一樣。比如罩鎮代碼裡面是gbk,那麼頁面顯示的也一定要是配悶局gbk。不知道能不能幫到你!
⑨ 怎麼將weblogic 11g的默認編碼設置成gbk
把weblogic用戶的運行環境改成GBK的就可以了
使用weblogic用滾拍升戶登錄大老linux
vi ~/i18n 添賀衡加如下內容。報錯。重新登錄weblogic。並重新啟動weblogic
LANG="zh_CN.gbk"
⑩ Linux下WebLogic問題
weblogic7的安裝及配置 1.雙擊WebLogic platform700_win32.exe,執行安裝。 2.安裝成功後,把 crack 目錄中的 license.bea 文件覆蓋 bea wls根目錄下的同名文件,當然建議先把原文件 備份一次. 3. 復制 crack 目錄中的 license.jar 文件到 bea 的lib 目錄下. 4. 修升余改 bin 目錄下的 startWLS.cmd 文件,在其中的 classpath 設置中,把 license.jar 加入,並且一定要放 在 weblogic_sp.jar 和 weblogic.jar 文件的前面,形如: set CLASSPATH=%JAVA_HOME%\lib\tools.jar;%WL_HOME%\server\lib\license.jar;%WL_HOME%\ server\lib\weblogic_sp.jar;%WL_HOME%\server\lib\weblogic.jar; 5. 重啟wls. crack 完成. (渣旁註意:我們在很多可以下載wls7.0的license.bea文件的地方下載了license.bea一試,有的直接復制過來就可 以可以正確的啟動wls,但是仔細閱讀license.bea文件會發現,這個license.bea是有許多限制的,有些限制會 使你不得不放棄這個license的. 究竟是什麼呢,我們打開看看其中一個node的內容. 其中有 "expiration" ,"ip","units"的屬性後面都接著不同的數值. expiration當然是時間限制,當然,可以 運行到2028年這個限制當然和沒有限制差不多. ip是客戶機ip限制,這里是any,沒有問題. 還有一個units,這 是做什麼的,經過一番測試,發現這是限制獨立的客戶ip數目.就是講,當累計達到有20個獨立的ip地址訪問了 該wls所服務的web站點,自然客戶請求就會被統統拒絕了.在wls的log中會找到以下這樣的話. <000211> . 這個限制就足以謀殺了你的web站點了. 那我們必須找到一個有如下屬性特徵的: cpus="unlimited" expiration="never" ip="any" licensee="Whoever" type="RTK" units="unlimited" 一個真正完全破解的weblogic7.0.) 6. WebLogic7的配置: (1) 在wls7的開始菜單欄中運行QuickStart,在頁面中找到 Configure a New Server項,點擊進入頁面, Choose Domain Type And Name: 選擇 WLS Domain. (2)Choose Server Type: a.Single Server b.Admin Server with Managed Server(s) c.Admin Server with Cluster Managed Server(s) d.Managed Server 說明: a.單機版(試用於學習者使用) b.類似於6.1版本的默認安裝,是Managed Server和Admin Server集成在一起。(用於遠端控制,其他如笑橡的 Server之用) c.集群Server 和 Admin Server 集成在一起。(只有特大的系統才會用到) d.單純的Managed Server 。(只作業務,不做管理,本地不保存config.xml信息) 鑒於這里大部分人都是自學,所以我選擇Single Server。 (3)Choose Domain Location:默認是WLS_HOME\user_projects\,我選默認,改過後有沒有問題,我不知道。 (4) ServerName :DittyServer, Server Listen Address: 對於單機版不用寫,默認是localhost,如果想寫可以寫自己的IP。 Listen Port:7001默認 SSL Listen Port:7002默認 (5)Create System User Name and Password:這里與6.1不同,系統用戶不再是system,用戶可以自行定義,我 在這里還用system username:system password:weblogic (6)Install Sever as Windows Service: NO!(意思是將其加到系統的服務列表內,有系統自動啟動,還是手動 控制比較靈活!) (7)Install Domain into Start Menu : NO! (8)Create (9)End (10)修改啟動腳本,WlS_HOME\user_projects\mydomain\startWebLogic.cmd set WLS_USER=DittyServer set WLS_PW=weblogic set STARTMODE=false (11)啟動:執行剛才修改的startWebLogic.cmd 祝你好運!!