用Portal来集成外部应用程序

原创
2016-06-21 09:15:31 868浏览

程序

随着Portal一步步走向成熟其结构和功能也发生了较大变化,从混和型服务走向以系统框架为核心,应用程序与部署、开发完全分开的阶段,Portal相当与一个骨架一样可以接纳外部的这种技术架构开发的应用程序,使用Portals Bridges模式来连接不同的应用程序,可包括一下几种:

集成Struts MVC模式开发的应用程序:
Struts已经成为了用Java创建Web应用的一个最流行的框架工具,Struts所实现的MVC模式给Web应用带来了良好的层次划分,同时也提供了一系列的工具来简化Web应用的开发。

应用程序开发者无需关心Portal的规范,只要关心Struts本身的开发,这样大大降低了开发成本和开发人员的再培训

图7:在Portal中集成Struts应用程序


主要实现类:

public class StrutsPortlet extends GenericPortlet

下面是Portlet的片断:

ServletContextProvider

org.apache.jetspeed.portlet.

ServletContextProviderImpl

ViewPage

/Welcome.do

HelpPage

/Tour.do

StrutsPortletDemo

Struts Portlet Demo

This is the struts MailReader portlet demo

org.apache.portals.bridges.struts.StrutsPortlet

-1

text/html

VIEW

HELP

集成WebWork开发的应用程序
WebWork是一个源代码开放的Web应用框架,用于简化基于Web的应用开发。本专栏介绍了WebWork并且描述了如何使用WebWork和JavaServerPages(JSP)、Velocity两种技术来建立注册界面的过程

通过Jetspeed2的Portals Bridges框架来实现和webwork的集成,主要实现类

public class Webwork2Portlet extends GenericPortlet

JSF应用程序集成
JSF是什么?

JSF为广大基于JAVA的 Web应用用户界面的开发人员提供了标准的编程接口、丰富可扩展的UI组件库(一个核心的JSP标记库用来处理事件、执行验证以及其他非UI相关的操作和一个标准的HTML 标记库来表示 UI组件)、事件驱动模型等一套完整的Web应用框架,通过 JSF ,您可以在页面中轻松自如地使用 WEB 组件、捕获用户行为所产生的事件、执行验证、建立页面导航…,同时您会发现,当使用支持JSF的开发工具来开发 JSF 应用的时候,一切将会变得异常简单,就类似于我们现在开发VB或者PowerBuilder程序一样的简便,GUI方式拖放组件、修改组件属性、建立组件间关联以及编写事件侦听器等等,这样,一个并不是特别熟悉Java的Web应用开发人员也能够轻松地完成自己的任务了,这种易开发性对于J2EE而言无疑是太重要了

集成PERL应用程序
PERL介绍:

Perl 就是 Practical Extraction and Reporting Language 的简称,是一种最广泛应用于语法分析和 World Wide Web 的编程语言。它起源于 awk、C、sh 和 sed 语言,然而,它的应用开发远比其他任何一种面向对象编程语言更加容易。

实现方法:

N-US>public class PerlPortlet extends GenericPortlet

直接通过HttpServletResponseWrapper来封装获取Response的字节流

Portlet的配置的片断

perl-demo

Perl demo Portlet

org.apache.portals.bridges.perl.PerlPortlet

-1

text/html

VIEW

集成PHP应用程序
PHP介绍:

PHP是一个基于服务端来创建动态网站的脚本语言,您可以用PHP和HTML生成网站主页。当一个访问者打开主页时,服务端便执行PHP的命令并将执行结果发送至访问者的浏览器中,这类似于ASP和CoildFusion,然而PHP和他们不同之处在于PHP开放源码和跨越平台,PHP可以运行在WINDOWS NT和多种版本的UNIX上。它不需要任何预先处理而快速反馈结果,它也不需要mod_perl的调整来使您的服务器的内存映象减小。PHP消耗的资源较少,当PHP作为Apache Web服务器一部分时,运行代码不需要调用外部二进制程序,服务器不需要承担任何额外的负担。

public class PHPApplicationPortlet extends GenericPortlet



声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。