1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

    <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
    <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
  2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
    現在位置:范文先生網>理工論文>計算機信息技術>基于J2ME平臺的SOAP協議研究與應用

    基于J2ME平臺的SOAP協議研究與應用

    時間:2022-08-19 05:09:03 計算機信息技術 我要投稿
    • 相關推薦

    基于J2ME平臺的SOAP協議研究與應用

    摘  要:本文對于在J2ME平臺下,利用XML解析器開發SOAP協議的基本方法進行了研究,介紹了J2ME平臺和SOAP協議,其中重點探討了XML的開發,提出了一種利用XML解析器在J2ME平臺上實現SOAP協議的方法,具有一定的推廣價值。
    關鍵詞:J2ME SOAP XML嵌入式系統

    基于J2ME平臺的SOAP協議研究與應用

     引言

    J2ME作為嵌入式系統應用平臺得到了迅速的發展,JAVA語言固有的平臺無關性使得基于J2ME平臺的嵌入式應用系統具有廣闊的前景。受限于嵌入式設備及消費類電器硬件條件的限制,J2ME平臺提供的功能有限,如何能夠在有限的資源下拓展J2ME的功能,使得J2ME平臺能夠處理SOAP協議是本文研究的重點。

    目前企業應用正在向面向WEB服務的SOA架構轉變,嵌入式系統與企業應用系統的連接目前還處于TCP/IP協議、HTTP協議等比較初級的階段。隨著企業應用系統提供的WEB服務日益廣泛和成熟,需要J2ME平臺提供處理SOAP協議的需求也越來越多。

    SOA架構是目前企業應用系統廣泛部署的架構,實現SOA的關鍵問題之一就是對SOAP協議的支持。本文分析了在J2ME平臺中實現SOAP協議處理遇到的問題,提出了相應的解決方案。

    2  j2ME介紹[1] [2] [3]

    J2ME(Java 2 Platform Micro Edition)是為無線電子市場所設計的JAVA平臺,包括JVM規范和API規范。J2ME 定義了一套類庫和虛擬機技術,這些技術可以使用戶、服務提供商和設備制造商通過物理(有線)連接或無線連接,按照需要隨時使用豐富的應用程序。J2ME同時提供了Java語言一貫的跨平臺性和安全性。

    為了支持用戶和嵌入式市場提出的靈活性和可定制性要求,J2ME被設計得更加模塊化和可縮放化。J2ME在設備原有的操作系統上建造了3層軟件來實現這種要求:

    1.JVM層:這層基于宿主操作系統,按照某一種J2ME的配置實現了JVM。

    2.配置層:這層對于用戶可見度要低一些,但對簡表層非常重要。它針對不同市場的需求,定義了Java虛擬機的最小功能集合和Java類庫的最小集合。在J2ME設備中,JVM與配置層緊密相連,它們體現了每一類設備的基本功能。

    3.簡表層:這層對于用戶和應用程序提供者來說是最常見的。它針對特定市場的需求,定義了Java虛擬機的最小功能集合和Java類庫的最小集合。

    J2ME組件都圍繞一個中心,這些中心被稱為configuration(配置),它們中間的每一個都是用于消費電子和嵌入設備的特別的類。目前配置分為CLDC和CDC兩種。

    Connected limited device configuration(有限連接設備配置,簡稱 CLDC)定義支持“devices that you hold in your hand(握在手中的設備)”的應用程序接口和技術,這類設備的代表是PDA。Connected device configuration(連接設備配置 CDC )定義支持“devices that you plug into plug into the wall(插入墻的設備)”的應用程序接口和技術,這類設備的代表是機頂盒。

    這兩種配置不同的地方就在于它們應用于的裝置的能力,CLDC設備的處理器能力有限 (與臺式機系統比較 ),并且存儲器大小一般也只在128 KB到 512 KB之間。CDC系統不同,它可能有32位或64位處理器,以及有限的存儲容量,不過它的下限也得超過512K。

    上圖解釋配置和簡表的體系結構。J2ME的體系結構被橫向地分成三層,縱向分成兩部分。配置包括一個控制配置核心類的虛擬機,具體的簡表位于每個配置之上。
           簡表為相同消費電子設備的不同的生產商提供了標準化的 Java類庫,現在五個已知簡表已經有了規范:

    Mobile information devices profile (MIDP)  移動電話和呼叫器 CLDC

    Personal digital assistant profile  Palm和Handspring的PDA 設備 CLDC 

    Foundation profile  用于所有不需要GUI的CDC設備的標準簡表 CDC

    Personal profile  替代PersonalJava的Foundation完善的簡表 CDC 

    RMI profile  提供RMI的Foundation完善的簡表 CDC 

    3 SOAP協議介紹[4]

    SOAP(簡單對象訪問協議)是一種利用XML編碼數據的數據傳輸協議。它是同類協議中要求最低的一個規范,只定義了協議所要求的最關鍵的部分,有意地忽略了垃圾收集、對象激活等方面的細節。像TCP/IP協議一樣,SOAP協議也包括客戶端和服務器兩個部分。

    SOAP客戶端是一種創建XML文檔的程序,該XML文檔包含在分布式系統遠程調用方法所需的信息。SOAP客戶端不是傳統意義上的程序,它除了用作普通的桌面應用程序外,還可以是一種Web服務器或基于服務器的應用程序。來自SOAP客戶端的消息和請求一般是通過HTTP發送的。因而,SOAP文檔可以穿過幾乎所有的防火墻,從而能跨越不同的平臺交換信息。

    SOAP服務器只是用于監聽SOAP消息的特殊代碼,它可用作SOAP文檔的分配器和解釋器。外部Web服務可以與基于J2EE技術的應用程序服務器交互,這種應用程序服務器可以處理多種客戶端的SOAP請求。

    SOAP定義了數據編碼規則,稱為基準編碼或“Section 5(第5節)”編碼,它是出自SOAP規范中描述數據編碼規則的內容。SOAP編碼可以簡短地描述成簡單值或復合值的集合。簡單值可以是簡單類型,如整型、浮點型和字符型,或者是XML架構規范第2部中定義的內置類型,包括各種數據類型,如字節型數組和枚舉。復合值包括結構、數組和XML架構制定組定義的復雜類型。

    SOAP在標準化消息格式環境中,可以做所有它能完成的工作。消息的主體部分是“text/xml”形式的MIME類型,并且包含一個SOAP封套。該封套是一個XML文檔。封套包含了報頭(可選的)和報文(必須有的)。封套的報文部分總是用于最終接收的消息,而報頭項目可以確定執行中間處理的目標節點。附件、二進制數字及其他項目可以附加到報文上。

    SOAP提供了一種讓客戶端指定哪個中間處理節點必須處理報頭項目的方法。由于報頭與SOAP消息的主體內容是互不相關的,所以可用它們給消息添加信息,而不會影響對消息報文的處理。

    4 SOAP協議在J2ME平臺中的實現

    如何真正地將移動設備融入到Web Services中去呢?這就需要使得PDA、手機等成為Web Services的客戶端,因此這些設備至少應該具有處理XML信息的能力。在J2ME平臺中實現SOAP客戶端的功能,使得嵌入式設備能夠連接企業的WEB服務是企業應用中比較常見的需求。J2ME的基本類庫中沒有提供SOAP的支持,所以需要在J2ME平臺中開發實現SOAP的處理功能。

    實現SOAP協議客戶端的關鍵問題分為兩個方面:J2ME不同配置的數據類型不一樣,導致與SOAP協議封裝的數據類型不匹配;J2ME平臺沒有提供對XML文件進行處理的功能。

    針對第一個問題,需要注意只能使用基本類型,對不匹配的數據類型采用使用基本類型復合的方式進行處理。針對第二個問題需要在J2ME中擴展對XML文件處理的功能。目前有有兩種方法對XML文件進行解析。一種是采用DOM的方式,另外一種是采用SAX的方式。操作DOM是一個與XML相互作用的簡單方法,通常這個XML是一棵完整的XML樹,被解析成一個存放在存儲器中的節點結構,你可以遍歷這棵樹。它非常簡單易用,但是因為整棵樹存在于存儲器中造成存儲器的負擔,而對于嵌入式系統來說存儲器的資源是有限的,因此這種方法的使用具有一定局限性。第二種方法在捕捉語法分析事件中,每當語法分析程序遇到數據中的特定結構,它就會遍歷XML數據,然后把結果發回前面注冊的一個事件監聽器中。比如說,當語法分析程序遇到一個起始標記,如<html>,那么事件監聽器將接收一個事件,通知它這個情況,并且向它傳遞任何所需的信息。相對DOM方式的處理,SAX方法對存儲器的要求比較低,但是效率要比DOM方式低。

    国产福利萌白酱精品tv一区_日韩亚洲中字无码一区二区三区_亚洲欧洲高清无码在线_全黄无码免费一级毛片
    1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

      <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
      <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
    2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
      中文国产精品久久久 | 亚洲国产精品第一页 | 一本大道香久在线播放 | 亚洲国产精品精品在线电影 | 久热综合在线亚洲精品 | 日本中文字幕aⅴ高清看片 亚洲欧美性综合在线 |