欢迎来到天天文库
浏览记录
ID:30641872
大小:17.43 KB
页数:4页
时间:2019-01-02
《基于struts和ejb的web service框架研究》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、从本学科出发,应着重选对国民经济具有一定实用价值和理论意义的课题。课题具有先进性,便于研究生提出新见解,特别是博士生必须有创新性的成果基于Struts和EJB的WebService框架研究MVC进行初始化工作,读取配置文件,为不同的Struts模块初始化相应的ModuleConfig对象。控制器接收Http请求,并从ActionConfig中找出对应于该请求的Action子类,如果没有对应的Action,控制器直接将请求转发给JSP或者静态页面,否则控制器将请求分发至具体Action类进行处理。在控制器调用具体Action的Execu
2、te方法之前,ActionForm对象将利用Http请求中的参数来填充自己。Action要处理的业务逻辑封装在JavaBean中,通过JavaBean调用EJB以完成业务处理。Action执行完后返回一个ActionFroward对象。2简单的Web服务体系结构当您要将企业应用程序转变成与Web服务一起使用时,最简单的途径就是将单个操作与单个的企业服务结合在一块,如图3所示。图简单Web服务体系结构在这种设计方法中,实现业务逻辑的服务与实现数据检索的服务是混合在一起的。这样的一种Web服务可以很容易从已有的业务组件中开发出来。然而,它
3、有很多的缺点:对用户没有提供统一认证,提供者与订阅者耦合不紧,业务逻辑没有重用。简而言之,对于一个连贯的解决方案来说这并不是一个非常好的体系结构。3采用Struts的Web服务前面讲过,Struts课题份量和难易程度要恰当,博士生能在二年内作出结果,硕士生能在一年内作出结果,特别是对实验条件等要有恰当的估计。从本学科出发,应着重选对国民经济具有一定实用价值和理论意义的课题。课题具有先进性,便于研究生提出新见解,特别是博士生必须有创新性的成果架构清晰地区分开了视图、控制器以及模型。模型包含所有必须的业务逻辑,从存储数据仓库中检索数据。您
4、可以构建一个简单的Web服务层——称为WSManager层——这样的模型可以提供Web服务也可以订购Web服务。使用这种体系结构的应用程序将基于组件开发的最佳点与Internet结合在了一起,如图4所示。其它Struts相关组件前面已讨论,下面主要讨论这种体系结构中WSManager层,因为它是此体系结构中真正新加的部分。作为Web服务端和EJB容器之间的中间件,WSManager接收JAX-RPC端点的请求。将客户端请求映射到WSManager类中的方法调用。这些客户端请求是SOAP信息的格式。WSManager必须实现安全认证,转
5、变参数,在指定请求到模型服务之前,要对这些请求进行参数预处理。请求所包含的参数形式有Java对象,Java原始参数,XML文档,或者甚至是SOAP文档分片。这些类型必须要转化成内部所支持的schema。图采用Web服务的Struts应用程序WSManager也可以生成响应;这个过程由方法调用返回值的简单构造所组成。WSManager中保留这样的功能,您可以通过缓存数据从而避免重复访问模型服务层。您还可以集中管理响应聚集以及XML文档转换,如果您要返回给调度者的文档必须遵守与内部schema不同的schema时,这一点就显得尤其重要。课
6、题份量和难易程度要恰当,博士生能在二年内作出结果,硕士生能在一年内作出结果,特别是对实验条件等要有恰当的估计。从本学科出发,应着重选对国民经济具有一定实用价值和理论意义的课题。课题具有先进性,便于研究生提出新见解,特别是博士生必须有创新性的成果在以上模型中,Web服务的客户端通过SOAP消息与Web服务端点进行交互从而达到使用EJB组件提供的服务的目的。在Web服务端,WSManager处理所有SOAP请求并把它们委派到模型层所暴露的业务逻辑。这样有很多好处,因为WSManager会:作为初始联系点来管理请求与服务。调用安全服务,包括
7、身份验证与授权使用,从而避免任何重复的层访问。委派业务处理WSManager代理对EJB的方法调用。接受客户端传递的所有参数然后简单地把这个调用代理给会话外观的某个方法,把对EJB的调用过程从Web服务端点中分离出来。隐藏与EJB相关的系统异常。与API相关的系统异常,比如RemoteException,EJBException都在WSManager中被捕获然后作为一个非EJB的相关异常(比如一个自定义的业务代理异常)通过Web服务端点重新抛出给客户端。应用级的异常仍然被传递给Web服务端点,然后由Web服务端点通过SOAP消息发送给
8、调用Web服务的客户端。缓存数据避免任何不必要的数据库访问,可以在本地缓存一个会话bean方法调用返回结果,然后在后续请求中把它们传递给Web服务端点。还可以缓存一个会话bean的引用。具有重新尝试失败事务的能力。WSM
此文档下载收益归作者所有