function:WebServi" />

黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

五、WebService會話Session的管理

系統 2210 0

1、新建Session的WebService測試代碼,代碼很簡單。就是記錄用戶登錄的狀態信息,放在MessageContext的ServiceContext中。代碼如下:

      
      
      
        代碼
      
      
      

這里保存Session信息的主要是通過MessageContext這個上下文來獲取ServiceContext的上下文,然后通過setProperty來保存session的信息,通過getProperty來獲取session信息。

Session的作用可以在使用WebService登錄的時候,保存用戶的登錄狀態或是會話消息。但是使用session需要設置發布Service的時候,設置WebService的作用域。作用域默認是request,它還有另外三個值,分別是:application、soapsession、transportsession;我們可以選擇使用transportsession和application分別實現同一個WebService類和跨WebService類的會話管理。

2、使用axis2的工具生成aar文件,并發布LoginService服務。

clip_image002

關于這里發布LoginService的步驟就不一一介紹,上面已經有說過了。當你用這個步驟發布WebService的時候,你可以打開壓縮文件的方式aar文件(其實不一定要用aar文件,只是官方推薦的aar,jar文件也是可以的),在META-INF目錄下有一個services.xml文件,看到它的<service>這個標簽,沒有設置scope屬性。

五、WebService會話Session的管理_第1張圖片

scope默認的是request,我們得修改services.xml的內容。

修改后services.xml內容如下:

          
          
          
            代碼
          
          
          

這個地方的scope是關鍵,如果這里不設置的話session是無法存放信息。

3 、用控制臺Dos命令發布WebService

這個是手工打包,也就是我們經常用的jar命令

首先我們得需要一個services.xml文件,文件內容如上面的。

<service name= "LoginService" scope= "transportsession" >

name是當前發布WebService的名稱,scope是會話作用域。保存在Session中就要用這個transportsession這個作用域。

<parameter name= "ServiceClass" >com.hoo.service.LoginService</parameter>

這個是當前Service的類路徑,包名+類名

<messageReceivers>

<messageReceiver mep= "http://www.w3.org/2004/08/wsdl/in-only"

class= "org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />

<messageReceiver mep= "http://www.w3.org/2004/08/wsdl/in-out"

class= "org.apache.axis2.rpc.receivers.RPCMessageReceiver" />

</messageReceivers>

這個應該是參數和返回值信息的解析類,in-only是輸入也就是參數,in-out是輸出也就是返回值。

A、 首先,我們在C盤下新建一個sessionService的目錄,然后將上面的services.xml文件中的ServiceClass的類的class文件copy到這個目錄下,注意要帶上package目錄,然后在sessionService目錄下新建一個META-INF將上面的services.xml文件放到這個目錄下

B、 然后運行cmd進入控制臺,進入sessionService這個目錄,鍵入命令如下:

jar cvf service.aar .

clip_image006

service.aar是打包后的文件名稱,.是指代當前目錄

如果你不懂jar命令,你可以輸入jar會有命令語法的提示

五、WebService會話Session的管理_第2張圖片

進入sessionService這個目錄中,你可以看到service.aar文件就有了。然后將這個文件copy到axis2的WEB-INF目錄下的services目錄中,也就是

[tomcat-home]\webapps\axis2\WEB-INF\services

然后可以通過: http://localhost:8080/axis2/services/listServices

就可以查看剛才發布的服務了。

這樣就完成手工發布打包發布WebService了

C、 編寫WebService客戶端的請求代碼

              
              
              
                代碼
              
              
              

執行后,結果如下:

true

admin#登陸成功

上面要說明的是options.setManageSession( true );是開啟對Session管理的支持




五、WebService會話Session的管理


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論