WSO2 マッシュアップサーバー

マッシュアッププラットフォーム
WSO2 マッシュアップサーバー
開発者WSO2とコミュニティ
初回リリース2008年1月28日; 17年前 (2008年1月28日
最終リリース
2.3.2 / 2011年11月1日; 14年前[1] (2011年11月1日
書かれたジャワ
オペレーティング·システムクロスプラットフォーム
入手可能な英語
タイプアプリケーションサーバー
ライセンスApacheライセンス2.0
Webサイトwso2.com/products/マッシュアップサーバー

WSO2 Mashup Serverは、かつてJavaScriptベースのマッシュアップをホストしていたオープンソースのマッシュアッププラットフォームでしたが、現在は非推奨となり、使用されなくなりました。Apache Axis2をはじめとするオープンソースプロジェクトをベースとし、JavaScriptでWebサービス、フィード、スクレイピングされたWebページ、電子メール、インスタントメッセージを利用、作成、送信する機能を提供していました。ソースコードはオープンソースのApache Licenseに基づいて無料で公開されていました。マッシュアップの開発と展開のためのランタイムプラットフォームを提供し、ダウンロードしてローカルまたは組織内に展開することができました。

WSO2 マッシュアップサーバーはWebサービス中心で、各マッシュアップが新しいWebサービスを公開し、他のマッシュアップ、Webサービスクライアント、またはAjaxスタイルのWebページから利用できました。Webサービスのセキュリティの高さは、サービス指向アーキテクチャ(SOA)を導入する組織やビジネスマッシュアップにとって魅力的なテクノロジーとなりました

2012年12月8日、WSO2マッシュアップサーバーは廃止されました。残っていたJavaScriptウェブサービスホスティング機能はWSO2アプリケーションサーバーに統合されたためです。[2] WSO2アプリケーションサーバーは最終的にApache Tomcatの拡張機能セットとなり[3] 、JavaScriptホスティングはRhinoをベースにしたJaggeryによって提供されました[4] [5]

マッシュアップ構成言語としてのJavaScript

WSO2 Mashup Serverでは、マッシュアップはサーバーサイドJavaScriptを使用して作成されます。E4Xに加え、一連の言語拡張機能により、以下のようなドメイン固有の機能が提供されます。

  • 他のSOAP/REST Webサービスの呼び出し
  • RSS/Atomフィードの読み取りと書き込み
  • ウェブスクレイピング
  • APPベースの出版
  • 定期的なタスクのスケジュール
  • 電子メール
  • インスタントメッセージ

こんにちは世界

関数hello () { "Hello World"を返します; }  
     

SOAP Webサービスの呼び出し

関数invokeGetVersionService (){ var version = new WSRequest (); 
        

    var options = new Array ( ) ; options.useSOAP = 1.2 ; options.useWSA = 1.0 ; options.action = " http://services.mashup.wso2.org/version/ServiceInterface/getVersionRequest " ;    
      
      
      

    varペイロード= null ; var結果;   
     

    try { version.open ( options , " http ://localhost:7762/services/system/version " , false ) ; version.send ( payload ) ; result = version.responseE4X ; } catch ( e ) { system.log ( e.toString ( ) , " error " ) ; return e.toString ( ) ; } return result ; } 
          
        
          
       
         
         
    
     

フィードの操作

// RSS 2.0 フィードを作成し、ファイルに書き込みます。
function createRssFeed () { // フィードの作成var feed = new Feed (); feed . feedType = "rss_2.0" ; feed . title = "これはテストのフィードです" ; feed . description = "このフィードは、Feed ホスト オブジェクトを使用して RSS 2.0 フィードを作成する方法を示しています。" ; feed . link = "http://mooshup.com/rss20.xml" ; // フィードにエントリを作成var entry = new Entry (); entry . title = "これはテストのエントリです。" ; entry . description = "これは、Entry ホスト オブジェクトの使用方法を示すサンプル エントリです。" ; feed . insertEntry ( entry ); var entry2 = new Entry (); entry2 . title = "これは、別のテスト エントリです。" ; entry2 . description = "これは、Entry ホスト オブジェクトの使用方法を示すサンプル エントリです。" ; // エントリにメディア モジュールを追加します。var mediaModule = new MediaModule ( "http://www.earthshots.org/photos/387.jpg" ); mediaModule . copyright = "2007 Tad Bowman" ; mediaModule . type = "image/jpeg" ; mediaModule . thumbnail = "http://www.earthshots.org/photos/387.thumb.jpg" ; entry2 . addMediaModule ( mediaModule ); feed . insertEntry ( entry2 ); // 新しく作成されたフィードをファイルに書き込みます。 var result = feed . writeTo ( "test-created-rss-feed.xml" ); return result ; }  
    
        
      
      
      
      
 
    
        
      
      
    
 
        
      
      
 
    
       
    
      
      
      
    
 
    
 
    
       
 
     

ウェブスクレイピング

function webScrape () { var config = < config > < var - def name = 'response' > < html - to - xml > < http method = 'get' url = 'http://ww2.wso2.org/~builder/' /> < /html-to-xml> < /var-def> < /config>;  
     
                   
                      
                            
                      
                  
               

  varscraper =新しいスクレーパー( config ) ;結果=スクレーパー応答;    
    

  結果を返す; } 

構文は、 Web Harvestと呼ばれる別のオープンソース Web スクレイピング ツールと同じです

APPの操作

function persistAuthenticatedAppFeed () { // APPClient のインスタンスを作成しますvar client = new APPClient ();  
  
      

  // AtomFeed のインスタンスを作成する
var feed = new AtomFeed ();      

  
//クライアントのログイン資格情報を設定しますclient.credentials = { username : "you@email.com" , password : "xxx" , service : "blogger" , authtype : "google" };           

  // フィードを取得してオンラインにします
feed = client.getFeed ( " http://blog.mooshup.com/feeds/posts/default" );    

  // フィードから個々のエントリの配列を取得します。var 
entries = new Array ( ); entries = feed . getEntries ();      
    

  // 取得したフィードをファイルに書き込みます
feed.writeTo ( " my -file-name.xml" ); }  

定期的なタスクのスケジュール

// 2 秒ごとに関数を実行するようにスケジュールします
var uuid = system . setInterval ( 'myJavaScriptFunction("parameterValue")' , 2000 );    

// 上記のスケジュールされたタスクを停止し
ますsystem.clearInterval ( uuid ) ;

電子メールの送信

function sendEmail (){ var email = new Email ( "host" , "port" , "username" , "password" ); var file = new File ( "temp.txt" ); email . from = "test@wso2.com" ; email . to = "test@wso2.com" ; // あるいは message.to を文字列の配列にすることもできます。cc と bcc についても同様ですemail . cc = "test@wso2.com" ; email . bcc = "test@wso2.com" ; email . subject = "WSO2 Mashup server 1.0 Released" ; email . addAttachement ( file , "temp.txt" ); // オプションで添付ファイルを追加できます。引数の数は可変です。各引数は、ファイル ホスト オブジェクトまたはファイルを表す文字列にすることができます。//この場合は、2 つの添付ファイルを送信しています (これは、ファイル ホスト オブジェクトまたはファイルへのパスを使用して添付ファイルを送信する方法を示しています)。email . text = "WSO2 マッシュアップサーバー 1.0 は 2008 年 1 月 28 日にリリースされました" ; email .send ( ); } 
         
      
    
     
    
    
    
    
                                          
    
  

参照

参考文献

  1. ^ Siriwardena, Ranga (2011年11月1日). 「WSO2 マッシュアップサーバー 2.3.2 リリース!」WSO2 アナウンスメント(メーリングリスト) . 2022年4月18日閲覧
  2. ^ Marsh, Jonathan (2012年12月8日). 「WSO2 マッシュアップサーバー - 今後の展望は?」. The Source. wso2.com . 2012年12月16日時点のオリジナルよりアーカイブ。
  3. ^ 「WSO2 アプリケーションサーバーへようこそ」。wso2/product-as. product-as/README.md(master) . 2022年4月18日取得GitHub経由。
  4. ^ 「{jaggery.js} - おいしいJavascriptフレームワーク」。wso2/jaggery. jaggery/README.md at master 2022年4月18日取得– GitHub経由。
  5. ^ “Jaggery”. 2021年5月16日時点のオリジナルよりアーカイブ。
  • 公式サイト
「https://en.wikipedia.org/w/index.php?title=WSO2_Mashup_Server&oldid=1331406286」から取得