| 開発者 | WSO2とコミュニティ |
|---|---|
| 初回リリース | 2008年1月28日 |
| 最終リリース | 2.3.2 / 2011年11月1日[1] |
| 書かれた | ジャワ |
| オペレーティング·システム | クロスプラットフォーム |
| 利用可能 | 英語 |
| タイプ | アプリケーションサーバー |
| ライセンス | Apache ライセンス2.0 |
| Webサイト | wso2.com/products/mashup-server |
WSO2 Mashup Server は、かつてJavaScriptベースのマッシュアップをホストしていたオープンソースのマッシュアッププラットフォームでしたが、現在は非推奨となり、使用されなくなりました。Apache Axis2やその他のオープンソース プロジェクトをベースとし、JavaScript でWeb サービス、フィード、スクレイピングされた Web ページ、電子メール、インスタント メッセージを利用、構成、発行できるようにしていました。ソース コードは、オープンソースのApache Licenseに基づいて自由に利用できました。マッシュアップを開発および展開するためのランタイム プラットフォームを提供し、ローカルまたは組織内でダウンロードして展開することができました。
WSO2 マッシュアップ サーバーは、各マッシュアップが新しい Web サービスを公開し、他のマッシュアップ、Web サービス クライアント、または Ajax スタイルの Web ページで使用できるという点で、Web サービス中心でした。Webサービスはセキュリティ保護が可能であるため、サービス指向アーキテクチャ(SOA) を導入している組織やビジネス マッシュアップにとって魅力的なテクノロジでした。
2012年12月8日、WSO2マッシュアップサーバーは廃止されました。残りの機能であるJavaScriptウェブサービスホスティングはWSO2アプリケーションサーバーに統合されたためです。[2] WSO2アプリケーションサーバーは最終的にApache Tomcatの拡張機能セットとなり[3] 、JavaScriptホスティングはRhinoをベースにしたJaggeryによって提供されました。[4] [5]
マッシュアップ構成言語としてのJavaScript
マッシュアップは、WSO2 マッシュアップ サーバーでサーバー側 JavaScript を使用して作成されます。E4X とともに一連の言語拡張機能により、次のようなドメイン固有の機能が提供されます。
- 他のSOAP/REST Webサービスの呼び出し
- RSS/Atomフィードの読み取りと書き込み
- ウェブスクレイピング
- APPベースの出版
- 定期的なタスクのスケジュール
- 電子メール
- インスタントメッセージ
こんにちは世界
関数hello () { return "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 entrys = new Array (); entrys = 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" ); // オプションで添付ファイルを追加できます。引数の数は可変です。各引数は、File HostObject またはファイルを表す文字列にすることができます。// この場合は、2 つの添付ファイルを送信しています (これは、File Host Object またはファイルへのパスを使用して添付ファイルを送信する方法を示しています)。email . text = "WSO2 マッシュアップ サーバー 1.0 は 2008 年 1 月 28 日にリリースされました" ; email .send ( ); }
参照
参考文献
- ^ Siriwardena, Ranga (2011年11月1日). 「WSO2 マッシュアップ サーバー 2.3.2 がリリースされました!」WSO2 アナウンス(メーリング リスト) . 2022 年 4 月 18 日閲覧。
- ^ Marsh, Jonathan (2012 年 12 月 8 日)。「WSO2 Mashup Server – where to now?」。情報源。wso2.com。2012年12 月 16 日時点のオリジナルよりアーカイブ。
- ^ 「Welcome to WSO2 Application Server」。wso2/product-as. product-as/README.md at master 。2022-04-18取得– GitHub経由。
- ^ 「{jaggery.js} - The delicious Javascript framework」。wso2/jaggery. jaggery/README.md at master 。2022-04-18に取得– GitHub経由。
- ^ “Jaggery”. 2021年5月16日時点のオリジナルよりアーカイブ。
外部リンク
- 公式サイト
