WebLogic常見問題-創(chuàng)新互聯(lián)

myeclipse+weblogic10的配置,配置成功

目前創(chuàng)新互聯(lián)已為近千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、寧鄉(xiāng)網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

運(yùn)行中可能失敗,由于weblogic10不穩(wěn)定,重啟機(jī)器后可以使用了

web工程使用到hibernate3時(shí)可能出現(xiàn)問題

ClassNotFoundException: org.hibernate.hql.ast.HqlToken

參考http://blog.chinajavaworld.com/entry.jspa?id=829

把本地的antlr.jar包考到weblogic.jar所在目錄,在myeclipse配置服務(wù)器的path選項(xiàng)中添加這個(gè)antlr.jar包后運(yùn)行OK

下面轉(zhuǎn)載了可能出現(xiàn)的其他問題和解決方法:

1.其中發(fā)現(xiàn)jmesa處理時(shí)找不到配置文件,對(duì)應(yīng)下面的問題6,我是改用archive方式發(fā)布后就OK了

2.CXF在WebLogic10.3上的部署出現(xiàn)問題:org.apache.cxf.js.rhino.DOMPayloadProvider" failed to preload

解決方法是web.xml文件的頭改為<web-app xmlns="http://java.sun.com/xml/ns/j2ee">

3.有<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>無法處理,該工程中用到的jstl.jar包來自MyEclipse,找一個(gè)放到本工程的lib庫下,可解決

4.避免在lib庫中出現(xiàn)重復(fù)包

5.Hibernate-Validate-4.0.jar的不支持,用到該包,要用以前的Hibernate-Validate.jar包

OS:Windows XP

WebApp Server:Tomat5.5 WebLogic  server 10 (中文版)

IDE:Bea workshop for weblogic platform。

一.IDE注意事項(xiàng)

創(chuàng)建動(dòng)態(tài)web項(xiàng)目,選擇是否共享j2ee庫,如果共享,則需要域的共享庫里面包含項(xiàng)目所需的庫,比如beeHive netUi;

不共享,則將所需的庫拷貝到WEB-INF/lib目錄,并自動(dòng)創(chuàng)建相關(guān)配置文件于WEB-INF下

如果訪問頁面時(shí)出現(xiàn)如下錯(cuò)誤:

index.jsp:2:4: 使用該 URI 無法找到標(biāo)記庫??赡苁且?yàn)?URI 不正確或解析 .tld 文件時(shí)出錯(cuò)。

<%@taglib uri="http://beehive.apache.org/netui/tags-html-1.0" prefix="netui"%>

請(qǐng)刪除多余的配置文件,或者重新建立一個(gè)工程,在向?qū)У诙撨x擇好正確的配置。

二.WebLogic基礎(chǔ)知識(shí)

一個(gè)域可以包括多個(gè)服務(wù)器,應(yīng)用程序依賴于某個(gè)服務(wù)器,通過部署-〉某應(yīng)用程序-〉目標(biāo) 來配置

wl_server是weblogic默認(rèn)域,通過開始菜單-〉Bea products->tools->Weblogic Server來啟動(dòng)

要?jiǎng)?chuàng)建自己的域,則可以通過開始菜單-〉Bea products->tools->Configuration wizard來創(chuàng)建

登錄地址:http://localhost:7001/console/login/LoginForm.jsp

登錄用戶密碼:weblogic/weblogic

1.部署war之后,測(cè)試時(shí)發(fā)生錯(cuò)誤:

Error  503--Service  Unavailable

From  RFC  2068  Hypertext  Transfer  Protocol  --  HTTP/1.1:

.....

解決辦法:一般是在剛剛激活更改后,就進(jìn)行測(cè)試,還需要將該應(yīng)用程序啟動(dòng),狀態(tài)為“活動(dòng)”之后再測(cè)試就可以了。

2.連接池測(cè)試時(shí)出錯(cuò):

Warning! Connectivity to backend database not verified. This is either because required connection pool attribute "TestConnectionsOnReserve" has not been enabled, or an invalid value has been specified for attribute "TestTableName". Please check the server log for more details..

配置連接緩沖池,在“高級(jí)”中選中“保留時(shí)測(cè)試連接”即可。此時(shí)需要先激活更改再進(jìn)行測(cè)試。否則還會(huì)報(bào)錯(cuò)。

3.jdbc jndi錯(cuò)誤:

javax.naming.NameNotFoundException: Unable to resolve 'jdbc_fbysss. Resolved ''; remaining name 'jdbc_fbysss'

首先要在控制臺(tái)中點(diǎn)擊左邊的控制欄中的服務(wù)->JDBC新建一個(gè)數(shù)據(jù)源,數(shù)據(jù)源名稱無所謂,jndi name一定要注意,比如取名叫jdbc_fbysss,而且,jdbc源必須依賴于一個(gè)server。否則無法啟動(dòng)。

對(duì)于Spring項(xiàng)目,修改applicationContext.xml的dataSource,(Tomcat的連接池在這里就不需要了)。

 <!-- 數(shù)據(jù)源緩沖池 -->  <bean id="dataSource"  class="org.springframework.jndi.JndiObjectFactoryBean">

    <property name="jndiName" value="jdbc_fbysss"/><!--兩者要一樣-->

    <property name="resourceRef">

     <value>false</value>

    </property>

    </bean>

4.xml校驗(yàn)錯(cuò)誤

(1)hbm.xml

org.dom4j.DocumentException: unknown protocol: platform. Nested exception: unknown protocol: platform

這個(gè)經(jīng)檢查是workshop導(dǎo)出時(shí) ,hbm.xml文件生成錯(cuò)誤。修改過來就好了

(2)struts-config.xml

正式部署時(shí)出現(xiàn)異常:

ERROR Digester     []: Parse Error at line 2 column

15: Document root element "struts-config", must match DOCTYPE root "null".

org.xml.sax.SAXParseException: Document root element "struts-config", must match

DOCTYPE root "null".

需要在struts-config.xml中第二行加入<!DOCTYPE  struts-config  PUBLIC  "-//Apache  Software  Foundation//DTD  Struts  Configuration  1.2//EN"  "http://struts.apache.org/dtds/struts-config_1_2.dtd">

5.ServletApi實(shí)現(xiàn)不一致情況

發(fā)現(xiàn)一個(gè)奇怪的現(xiàn)象,tomcat中,一個(gè)servlet的子類,如果沒有聲明init方法,會(huì)自動(dòng)執(zhí)行父類的init方法,而weblogic不會(huì)。

解決辦法是顯式聲明init,super.init();

6.莫名其妙空指針錯(cuò)誤

完整錯(cuò)誤信息:

java.io.FileNotFoundException: F:\bea\wlserver_10.0\samples\domains\workshop\servers\cgServer\tmp\_WL_user\prj_fbysss\mlh6uz\war (拒絕訪問。)

    at java.io.FileInputStream.open(Ljava.lang.String;)V(Native Method)

    at java.io.FileInputStream.<init>(FileInputStream.java:106)

    at workshop.util.filesystem.file.WlFileSystem.getInputStream(WlFileSyste

m.java:148)

    at workshop.util.filesystem.FS.getInputStream(FS.java:262)

    at javelin.jsp.JspParser.readStaticInclude(JspParser.java:3261)

    at javelin.jsp.JspParser.parseStaticInclude(JspParser.java:3198)

    at javelin.jsp.JspParser.processImplicitIncludes(JspParser.java:3289)

    at javelin.jsp.JspParser.jspParse(JspParser.java:703)

    at javelin.jsp.JspParser._parse(JspParser.java:504)

    at javelin.jsp.JspParser.parse(JspParser.java:497)

    at javelin.jsp.JspAnalyzer.parseFile(JspAnalyzer.java:113)

    at javelin.jsp.JspAnalyzer.parse(JspAnalyzer.java:101)

    at javelin.ProxySourceFile.parse(ProxySourceFile.java:117)

    at javelin.SourceFile.getAst(SourceFile.java:542)

    at javelin.SourceFile.getAst(SourceFile.java:516)

    at javelin.ProxySourceFile.codeGen(ProxySourceFile.java:215)

    at javelin.SourceFile.codeGen(SourceFile.java:310)

    at javelin.client.ClientUtilsImpl$CodeGenJob.run(ClientUtilsImpl.java:11

05)

    at javelin.client.Job.performJob(Job.java:81)

    at javelin.client.ThreadPool$WorkerThread.run(ThreadPool.java:215)

<2008-8-23 下午07時(shí)15分11秒 CST> <Error> <HTTP> <BEA-101017> <[weblogic.servlet.

internal.WebAppServletContext@36b25e - appName: prj_fbysss, name: 'prj_fbysss', context-path: '/prj_fbysss] Root cause of ServletException.

java.lang.NullPointerException

    at javelin.jsp.JspAnalyzer.parse(JspAnalyzer.java:104)

    at javelin.ProxySourceFile.parse(ProxySourceFile.java:117)

    at javelin.SourceFile.getAst(SourceFile.java:542)

    at javelin.SourceFile.getAst(SourceFile.java:516)

    at javelin.ProxySourceFile.codeGen(ProxySourceFile.java:215)

    Truncated. see log file for complete stacktrace

>

最后發(fā)現(xiàn)是web.xml中<include-coda/>一句不對(duì),去掉就好了,很怪異。

 <taglib>

 <taglib-uri>http://www.sss.com/select</taglib-uri>

 <taglib-location>/WEB-INF/tlds/select.tld</taglib-location>

   </taglib>

 <taglib>

 <taglib-uri>http://www.sss.com/tree</taglib-uri>

 <taglib-location>/WEB-INF/tlds/tree.tld</taglib-location>

   </taglib>

 <!--web 項(xiàng)目配置-->

 <jsp-property-group>

  <description>

  WEB項(xiàng)目配置

  </description>

  <display-name>JSPConfiguration</display-name>

  <url-pattern>*.jsp</url-pattern>

  <el-ignored>false</el-ignored>

  <page-encoding>gbk</page-encoding>

  <scripting-invalid>false</scripting-invalid>

  <!--這句居然引起webloic錯(cuò)誤?。。?! include-coda/-->

 </jsp-property-group>

</jsp-config>

7.類沖突問題

(1)JSTL解析失敗

index.jsp:1:1: validator 類 "org.apache.taglibs.standard.tlv.JstlCoreTLV" 失敗,出現(xiàn)如下異常: "java.lang.ClassCastException: weblogic.xml.jaxp.RegistrySAXParserFactory"。

<%@page contentType="text/html;charset=gbk" language="java"%>

項(xiàng)目屬性-〉項(xiàng)目構(gòu)面中的設(shè)置將記錄在.setting/org.eclipse.wst.common.project.facet.core.xml文件中。

最后是把prefer-web-inf-classes設(shè)置為false就可以了。

(2)HQL語句執(zhí)行失敗

org.springframework.orm.hibernate3.HibernateQueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken

這種情況是包版本沖突,必須設(shè)置prefer-web-inf-classes設(shè)置為true。

這樣一來,有的包需要true,有的需要false,怎么辦?Weblogic的確夠惡心的。JSTL的包都已經(jīng)放webapp下了,設(shè)置prefer-web-inf-classes設(shè)置為ture還不行,只好采取以下稍顯麻煩的方法:

在workshop開發(fā)環(huán)境下,啟動(dòng)的服務(wù)器目錄是

F:\bea\wlserver_10.0\samples\domains\workshop\bin

修改啟動(dòng)腳本startWebLogic.cmd

找到set CLASSPATH=%SAVE_CLASSPATH%,在后面加入

@REM sss added

set PRE_CLASSPATH=%WL_HOME%\server\lib\antlr-2.7.6rc1.jar;

set CLASSPATH=%PRE_CLASSPATH%;%CLASSPATH%

其中,antlr-2.7.6rc1.jar包需要拷貝到F:\bea\wlserver_10.0\server\lib下。

正式發(fā)布的時(shí)候,需要修改對(duì)應(yīng)域目錄下的啟動(dòng)腳本

比如f:\bea\user_projects\domains\fbysssDomain\bin\startWebLogic.cmd

8.部署問題

部署時(shí)出現(xiàn)如下錯(cuò)誤:

<2008-8-23 下午07時(shí)37分42秒 CST> <Warning> <Deployer> <BEA-149124> <

Failures were detected while initiating redeploy task for application 'prj_fbysss'. Error is: '

[Deployer:149163]The domain edit lock is owned by another session in non-exclusi

ve mode - this deployment operation requires exclusive access to the edit lock a

nd hence cannot proceed.'>

解決:進(jìn)入http://localhost:7001/console,釋放配置,再次部署即可。

注:更新war:必須在刪除該應(yīng)用,并激活更改之后才能覆蓋。

但是用war方式,獲取資源路徑的方法和tomcat不同,存在臭名昭著的getRealPath等問題,移植困難,所以用目錄方式部署比較好。

具體方法:先把war解壓,然后在weblogic控制臺(tái)里面選擇目錄部署。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

當(dāng)前題目:WebLogic常見問題-創(chuàng)新互聯(lián)
標(biāo)題URL:http://muchs.cn/article14/dddgde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)做網(wǎng)站、關(guān)鍵詞優(yōu)化、網(wǎng)頁設(shè)計(jì)公司、企業(yè)建站、營銷型網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)