志當存高遠,功到自然成!

          少年強則中國強,少年進步則中國進步!

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            53 Posts :: 2 Stories :: 2 Comments :: 0 Trackbacks

          前面講了用tomcat+axis來實現webservice,而網上對于weblogic+axis實現webservice卻不多,按照網上說的做卻總是報錯,不成功,所以我經過不停的試驗,終于配置成功了weblogic+axis

          首先我們下載一個weblogic8.1.3,jdk和axis的下載參照Tomcat+axis那片文章里的下載安裝和設置

          下載好后我們安裝weblogic,一直按下一步即可

          安裝完成后運行Configuration Wizard來新建域配置,一直按下一步,直到輸入UserName,Password and Description(我們這里都設置成weblogic),然后在按下一步直到完成

          然后我們將下載的axis壓縮包下的webapp目錄下的axis目錄拷貝到C:\bea\user_projects\domains\mydomain\applications下面

          由于axis中的一些jar包和weblogic中的有沖突,所以要修改C:\bea\user_projects\domains\mydomain\startWebLogic.cmd文件,優先使用axis的jar,將其中的
          set CLASSPATH=%WEBLOGIC_CLASSPATH%;%POINTBASE_CLASSPATH%;%JAVA_HOME%\jre\lib\rt.jar;%CLASSPATH%;%WL_HOME%\server\lib\webservices.jar
          改成
          set CLASSPATH=%AXISCLASSPATH%;%WEBLOGIC_CLASSPATH%;%POINTBASE_CLASSPATH%;%JAVA_HOME%\jre\lib\rt.jar;%WL_HOME%\server\lib\webservices.jar

          set CLASSPATH=%CLASSPATH%;%WEBLOGIC_CLASSPATH%;%POINTBASE_CLASSPATH%;%JAVA_HOME%\jre \lib\rt.jar;%WL_HOME%\server\lib\webservices.jar(這里必須保證將AXISCLASSPATH加入了 CLASSPATH環境變量中)
          保存運行這個文件啟動weblogic控制臺,如下圖
          查看更多精彩圖片

          啟動好之后打開ie,在url中輸入http://localhost:7001/console,輸入用戶名和密碼進入Weblogic Server Console
          查看更多精彩圖片

          點擊展開部署節點--點擊WEB應用程序模塊--然后點擊旁邊的部署新的新的應用程序模塊,會出現選擇web應用的窗口,如下圖
          查看更多精彩圖片

          選擇相應目錄下的web應用程序,我們選擇axis,如下圖
          查看更多精彩圖片

          點擊目標模塊按鈕,接著在出現的窗口中點擊部署即可(這里我發現如果不在環境變量CLASSPATH中設置%AXISCLASSPATH%時,部署將報錯)完成后如下圖
          查看更多精彩圖片

          這是我們可以點擊測試選項中的鏈接,也可以在ie中輸入http://localhost:7001/axis/,如果出現以下界面,說明配置成功
          查看更多精彩圖片

          這時我們就可以按照tomcat+axis那篇文章所說的發布web服務了

          遇到的問題
          weblogic+axis的最大問題是2者間jar包的沖突,客戶端調用web服務時會報 NullPointerException錯誤,網上都說是axis的saaj.jar和weblogic的webservices.jar沖突,須將 saaj.jar加在webservices.jar前面,我按網上這么加了也沒用,后來我把整個AXISCLASSPATH都加到了最前面,就如我上面 所說的那樣,嘿,他就好了,我暈俄,網上的人也不知道是怎么成功的

          還有一種說法就是在web-inf目錄下加weblogic.xml,網上的人也沒說要加到哪個web-inf下,我想想只有我的axis目錄下有web-inf吧,就加他下面了,weblogic.xml的內容如下
          <!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" "http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd">
          <weblogic-web-app>
           <container-descriptor>
            <prefer-web-inf-classes>true</prefer-web-inf-classes>
           </container-descriptor>
          </weblogic-web-app>
          這 樣也可以解決客戶端調用web服務時會報NullPointerException的錯誤,但是我發現這樣做的后果是點擊axis的service的 wsdl時出現無法顯示頁面。所以經過我不斷的調試,只有像我前面說的那樣修改startWebLogic.cmd中的set CLASSPATH項應該算是最完美的方法了,配這個東西的時候網上查了好久,都是千篇一律,說得沒頭沒尾,所以說還是得自己去實踐阿(實踐是檢驗真理的 唯一標準嘛0 && image.height>0){if(image.width>=510){this.width=510;this.height=image.height*510/image.width;}}" alt="" align="absmiddle" border="0">)

          注:在部署好的web應用程序的web-inf中加入weblogic.xml需要重新部署web應用程序
                  修改了startWebLogic.cmd需重新執行startWebLogic.cmd,以便修改起作用

          我在一個干凈的winxp sp2,JDK1.4.2.05,weblogic8.1.3的環境下部署了axis1.4,和同事在家遠程調用獲得成功

          相關程序安裝目錄
          JDK        C:\j2sdk1.4.2_05
          weblogic  C:\bea
          axis1.4     C:\axis14(lib下有一些jar需另外當,老實說我也不知道哪些起了作用,只是把網上所說得涉及到的jar都找來了,嘿嘿)

          相關環境變量設置
          AXIS_HOME=C:\axis14
          AXIS_LIB=%AXIS_HOME%\lib
          AXISCLASSPATH=%AXIS_LIB%\axis.jar;%AXIS_LIB%\commons-discovery-0.2.jar;%AXIS_LIB%\commons-logging-1.0.4.jar;%AXIS_LIB%\jaxrpc.jar;%AXIS_LIB%\saaj.jar;%AXIS_LIB%\log4j-1.2.8.jar;%AXIS_LIB%\xml-apis.jar;%AXIS_LIB%\xercesImpl.jar;%AXIS_LIB%\wsdl4j-1.5.1.jar;%AXIS_LIB%\activation.jar;%AXIS_LIB%\xmlrpc-2.0.jar

          JAVA_HOME=C:\j2sdk1.4.2_05
          CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%AXISCLASSPATH%;

          Path前加了%JAVA_HOME%\bin


          Feedback

          # re: Weblogic+Axis實現webservice[未登錄] 2016-08-04 18:01 coder
          更好的方法見
          http://blog.csdn.net/xgx1985xgx/article/details/6257368  回復  更多評論
            


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 金秀| 金山区| 广饶县| 乃东县| 余庆县| 平和县| 同德县| 湖北省| 绥德县| 鸡东县| 五莲县| 囊谦县| 滦平县| 长春市| 木兰县| 泰和县| 竹山县| 兴国县| 永德县| 吐鲁番市| 胶南市| 安义县| 昌图县| 淮安市| 玉田县| 泾源县| 南康市| 阿拉尔市| 合阳县| 巫溪县| 怀宁县| 安西县| 虞城县| 历史| 九龙坡区| 汉阴县| 奉贤区| 获嘉县| 得荣县| 阿尔山市| 韶山市|