WSO2 Mashup-сервер

Mashup-платформа
WSO2 Mashup-сервер
Разработчик(и)WSO2 и сообщество
Первоначальный выпуск28 января 2008 г. ; 17 лет назад ( 2008-01-28 )
Окончательный релиз
2.3.2 / 1 ноября 2011 г. ; 13 лет назад [1] ( 2011-11-01 )
Написано вЯва
Операционная системаКроссплатформенный
Доступно вАнглийский
ТипСервер приложений
ЛицензияЛицензия Apache 2.0
Веб-сайтwso2.com/products/mashup-server

WSO2 Mashup Server, платформа mashup с открытым исходным кодом , которая использовалась для размещения mashup-приложений на основе JavaScript , теперь устарела и больше не используется. Она была основана на Apache Axis2 и других проектах с открытым исходным кодом и позволяла JavaScript потреблять, составлять и выдавать веб-сервисы , каналы, извлеченные веб-страницы, электронную почту и мгновенные сообщения. Исходный код был доступен бесплатно по лицензии Apache с открытым исходным кодом . Она предоставляла платформу времени выполнения для разработки и развертывания mashup-приложений и могла быть загружена и развернута локально или в пределах организации.

WSO2 Mashup Server был ориентирован на веб-сервисы , поскольку каждый mashup представлял собой новый веб-сервис, который мог использоваться другими mashup-приложениями, клиентами веб-сервисов или веб-страницами в стиле Ajax. Защищенность веб-сервисов сделала их привлекательной технологией в организациях, внедряющих сервисно-ориентированную архитектуру (SOA), и для бизнес-mashup-приложений .

8 декабря 2012 года WSO2 Mashup Server был упразднен, поскольку его оставшаяся функциональность, хостинг веб-сервисов JavaScript, была включена в WSO2 Application Server. [2] WSO2 Application Server в конечном итоге стал набором расширений для Apache Tomcat [3] , а хостинг JavaScript был предоставлен Jaggery на основе Rhino . [4] [5]

JavaScript как язык создания мэшап-приложений

Mashup-приложения создаются с использованием серверного JavaScript в WSO2 Mashup Server. Набор языковых расширений вместе с E4X предоставляет доменно-специфичные функции, такие как;

  • Вызов других веб-служб SOAP/REST
  • Чтение и запись RSS/Atom-каналов
  • Веб-скрапинг
  • Публикация на основе приложений
  • Планирование периодических задач
  • Электронная почта
  • Мгновенные сообщения

Привет, мир!

функция привет () { return "Привет, мир" ; }    

Вызов веб-службы SOAP

функция 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 " ;              вар полезная нагрузка = ноль ; вар результат ;      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." ; // Добавление модуля Media к записи var mediaModule = new MediaModule ( "http://www.earthshots.org/photos/387.jpg" ); mediaModule.copyright = "2007 Tad Bowman" ; mediaModule.type = " image/jpeg" ; mediaModule.tip = " 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>;                вар скребок = новый скребок ( конфигурация ); результат = скребок . ответ ;        вернуть результат ; } 

Синтаксис идентичен другому инструменту для веб-скрапинга с открытым исходным кодом, который называется Web Harvest .

Работа с приложением

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 entry = new Array (); entry = 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 или строкой, представляющей файл. // В этом случае мы отправляем два вложения (это демонстрирует отправку вложений с использованием либо объекта File Host, либо пути к файлу). email . text = "WSO2 Mashup server 1.0 был выпущен 28 января 2008 года" ; email . send (); }                                      

Смотрите также

Ссылки

  1. ^ Siriwardena, Ranga (1 ноября 2011 г.). "WSO2 Mashup Server 2.3.2 Released!". Объявления WSO2 (список рассылки) . Получено 2022-04-18 .
  2. ^ Марш, Джонатан (8 декабря 2012 г.). «WSO2 Mashup Server–куда теперь?». Источник. wso2.com . Архивировано из оригинала 2012-12-16.
  3. ^ "Добро пожаловать на сервер приложений WSO2". wso2/product-as. product-as/README.md в master . Получено 2022-04-18 – через GitHub .
  4. ^ "{jaggery.js} - восхитительный фреймворк Javascript". wso2/jaggery. jaggery/README.md в master . Получено 2022-04-18 – через GitHub .
  5. ^ "Jaggery". Архивировано из оригинала 2021-05-16.
  • Официальный сайт
Взято с "https://en.wikipedia.org/w/index.php?title=WSO2_Mashup_Server&oldid=1209740362"