Serwer mashupowy WSO2
Deweloperzy | WSO2 i społeczność |
---|---|
Pierwsze wydanie | 28 stycznia 2008 |
Ostateczne wydanie | 2.3.2 / 1 listopada 2011
|
Napisane w | Jawa |
System operacyjny | Międzyplatformowe |
Dostępne w | język angielski |
Typ | Serwer aplikacji |
Licencja | Licencja Apache 2.0 |
Strona internetowa |
|
WSO2 Mashup Server to platforma mashup typu open source , która obsługuje mashupy oparte na JavaScript . Opiera się na Apache Axis2 i innych projektach open source i zapewnia autorom JavaScript możliwość konsumowania, komponowania i emitowania usług sieciowych , kanałów informacyjnych, zeskrobanych stron internetowych, poczty e-mail i wiadomości błyskawicznych. Kod źródłowy jest swobodnie dostępny na otwartej licencji Apache . Zapewnia platformę uruchomieniową do tworzenia i wdrażania mashupów. Można go pobrać i wdrożyć lokalnie lub w organizacji.
WSO2 Mashup Server koncentruje się na usługach sieciowych , ponieważ każda mashup udostępnia nową usługę sieciową, z której mogą korzystać inne mashupy, klienci usług sieciowych lub strony internetowe w stylu Ajax. Możliwość zabezpieczenia usług sieciowych sprawia, że są one atrakcyjną technologią w organizacjach wdrażających architekturę zorientowaną na usługi (SOA) oraz w przypadku mashupów biznesowych .
W dniu 8 grudnia 2012 r. Serwer WSO2 Mashup został wycofany, ponieważ jego pozostała funkcjonalność, hosting usług internetowych JavaScript, została przeniesiona do serwera aplikacji WSO2. WSO2 Application Server ostatecznie stał się zestawem rozszerzeń do Apache Tomcat , a hosting JavaScript został dostarczony przez Jaggery w oparciu o Rhino .
JavaScript jako język kompozycji typu mashup
Mashupy są tworzone przy użyciu JavaScript po stronie serwera na serwerze WSO2 Mashup Server. Zestaw rozszerzeń językowych wraz z E4X zapewnia funkcje specyficzne dla domeny, takie jak;
- Wywoływanie innych usług sieciowych SOAP/REST,
- Odczytywanie i zapisywanie kanałów RSS/Atom,
- Skrobanie sieci ,
- Publikowanie oparte na aplikacji ,
- Okresowe planowanie zadań,
- E-mailing i
- JESTEM
Witaj świecie
funkcja witaj () { zwróć „Witaj świecie” ; }
Wywoływanie usługi internetowej SOAP
funkcja invokeGetVersionService (){ var wersja = nowy WSRequest (); var opcje = nowa tablica (); opcje . użyjSOAP = 1,2 ; opcje . użyjWSA = 1.0 ; opcje . akcja = "http://services.mashup.wso2.org/version/ServiceInterface/getVersionRequest" ; var ładunek = null ;
zmienny wynik ; spróbuj { wersja . otwórz ( opcje , "http://localhost:7762/services/system/version" , false ); wersja . wyślij ( ładunek ); wynik = wersja . odpowiedźE4X ; } złapać ( e ) { system . log ( np . toString (),
"błąd" ); powrót e . do Ciągu (); } zwróć wynik ; }
Praca z kanałami
// Tworzenie kanału RSS 2.0 i zapisywanie go do pliku. function createRssFeed () { // Tworzenie kanału var feed = new Feed (); karmić . feedType = "rss_2.0" ; karmić . title = "To jest kanał testowy" ; karmić . description = "Ten kanał demonstruje użycie obiektu hosta kanału do tworzenia kanału RSS 2.0." ; karmić .
link = "http://mooshup.com/rss20.xml" ; // Tworzenie wpisów w Feed var entry = new Entry (); wpis . title = "To jest wpis testowy." ; wpis . description = "To jest przykładowy wpis demonstrujący użycie obiektu hosta Entry." ; karmić . wstaw wpis ( wpis ); var wpis2 = nowy wpis
(); wpis2 . title = "To jest kolejny wpis testowy." ; wpis2 . description = "To jest przykładowy wpis demonstrujący użycie obiektu hosta Entry." ; // Dodanie modułu mediów do wpisu var mediaModule = new MediaModule ( "http://www.earthshots.org/photos/387.jpg" ); moduł medialny . copyright = "2007 Tad Bowman" ; MediaModuł
. typ = "obraz/jpeg" ; moduł medialny . thumbnail = "http://www.earthshots.org/photos/387.thumb.jpg" ; wpis2 . dodajModułMedia ( ModułMedia ); karmić . wstawWpis ( wpis2 ); // Zapisywanie nowo utworzonego kanału informacyjnego do pliku var result = feed . writeTo ( "test-stworzony-rss-feed.xml" ); powrót
wynik ; }
Skrobanie sieci
funkcja 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> <
/konfiguracja>; var skrobak = nowy skrobak ( config ); wynik = skrobak . odpowiedź ; zwróć wynik ; }
Składnia jest identyczna z innym narzędziem do skrobania stron internetowych o otwartym kodzie źródłowym, zwanym zbieraniem sieci .
Praca z aplikacją
function fixedAuthenticatedAppFeed () { // Tworzenie instancji APPClient var client = new APPClient (); // Tworzenie instancji AtomFeed var feed = new AtomFeed (); // Ustawianie danych logowania dla klienta client . credentials = { nazwa użytkownika : "[email protected]" , hasło : "xxx" , usługa :
"blogger" , autoryzacja : "google" }; // Pobieranie i kanał online feed = client . getFeed ( "http://blog.mooshup.com/feeds/posts/default" ); // Pobieranie tablicy pojedynczych wpisów z kanału informacyjnego var wpisy = nowa tablica (); wpisy = kanał . pobierz wpisy (); // Zapisywanie pobranego kanału do pliku kanału . Napisz do
( "nazwa-mojego-pliku.xml" ); }
Okresowe planowanie zadań
// Zaplanowanie wykonywania funkcji co 2 sekundy var uuid = system . setInterval ( 'myJavaScriptFunction("parameterValue")' , 2000 ); // Zatrzymanie powyższego zaplanowanego systemu zadań . clearInterval ( uid );
Wysyłanie wiadomości e-mail
function sendEmail (){ var email = new Email ( "host" , "port" , "nazwa użytkownika" , "hasło" ); plik var = nowy plik ( "temp.txt" ); email . from = "[email protected]" ; email . do = "[email protected]" ;
// alternatywnie message.to może być tablicą ciągów znaków. To samo dotyczy wiadomości DW i UDW . cc = "[email protected]" ; email . bcc = "[email protected]" ; email . topic = "Serwer WSO2 Mashup 1.0 wydany" ; email . addAttachement ( plik , "temp.txt" );
// Opcjonalnie można dodawać załączniki, ma zmienną liczbę argumentów. każdy argument może być obiektem File hostObject lub łańcuchem reprezentującym plik. // W tym przypadku wysyłamy dwa załączniki (pokazuje to wysyłanie załączników przy użyciu obiektu hosta pliku lub ścieżki do pliku). email . text = "Serwer WSO2 Mashup 1.0 został wydany 28 stycznia 2008" ; email . wyślij (); }
Zobacz też
- Mashup (hybryda aplikacji internetowej)
- ECMAScript dla XML
- Skrobanie sieci
- Wieśniak! Rury
- Wieśniak! język zapytań