首    页 建模架构 设计模式 培训咨询 jdon框架 论坛

上一级 首页 下一级


C/S架构下胖客户端远程调用

Jdon框架不但是一个B/S架构框架,还支持C/S架构,客户端可以是Java类型的任何客户端,如SwingAppletSWT等。

使用Jdon框架,可以在无需改变业务服务层代码的情况下,将这些服务Service提供给远程Java客户端调用,这是一种基于Htpp协议的RPC,它区别于Web服务的最大不同是:Jdon框架将客户端请求打包对象传送;而不是转换成XML;省却了两端转换解析步骤,提高了性能。

架构原理图如下:

客户端配置

客户端调用远程服务器的服务核心代码很简单,如下:

    MySessionLocal mySessionLocal =  (MySessionLocal)serviceFactory.getService(

                        FrameworkServices.MySessionEJB);           

    mySessionLocal.insert();

客户端调用服务就如同与服务在同一个JVM中一样,但是因为客户端在远程,所以需要进行对远程服务器的一些配置,比如规定远程服务器的IP地址和Servlet Prox名称。

具体客户端代码可见框架案例Samples中的remoteClient代码。

服务器端配置

首先激活框架系统的远程访问,在web.xml加入:

<servlet>

    <servlet-name>EJBInvokerServlet</servlet-name>

    <display-name>接受远程客户端访问</display-name>

    <servlet-class>com.jdon.bussinessproxy.remote.http.InvokerServlet</servlet-class>

    <init-param>

         <param-name>configList</param-name>

         <param-value>jdonframework.xml</param-value>

     </init-param>

</servlet>

<servlet-mapping>

    <servlet-name>EJBInvokerServlet</servlet-name>

    <url-pattern>/auth/EJBInvokerServlet</url-pattern>

</servlet-mapping>

然后激活容器基于HTTP的基本验证,配置web.xml

<login-config>

    <auth-method>BASIC</auth-method>

    <realm-name>SecurityRealm</realm-name>

</login-config>

web.xml中定义访问权限如下:

<security-constraint>

    <display-name>User protected</display-name>

    <web-resource-collection>

      <web-resource-name>Collection1</web-resource-name>

      <url-pattern>/auth/*</url-pattern>

    </web-resource-collection>

    <auth-constraint>

      <role-name>User</role-name>

    </auth-constraint>

    <user-data-constraint>

      <transport-guarantee>NONE</transport-guarantee>

    </user-data-constraint>

</security-constraint>

这样,访问/auth /EJBInvokerServlet将得到授权保护。下面在web.xml中分别配置该系统的角色和JNDI配置。

  <security-role>

    <role-name>Admin</role-name>

  </security-role>

  <security-role>

    <role-name>User</role-name>

  </security-role>

  <ejb-local-ref>

    <ejb-ref-name>ejb/EJBContollerLocal</ejb-ref-name>

    <ejb-ref-type>Session</ejb-ref-type>

    <local-home>com.jdon.security.auth.ejb.SecurityFacadeLocalHome</local-home>

    <local>com.jdon.security.auth.ejb.SecurityFacadeLocal</local>

    <ejb-link>SecurityFacade</ejb-link>

  </ejb-local-ref>

jboss-web.xml配置中使用容器安全机制:

<jboss-web>

    <security-domain>java:/jaas/SecurityRealm</security-domain>

</jboss-web>

然后在JBosslogin-config.xml中配置SecurityRealm

 

 



上一级 首页 下一级


更多Jdon框架专题讨论

JdonFramework作为一个免费开源软件开发平台,可以商用开发大多数数据库应用软件和管理软件: 电子商务软件 在线教育软件 税务软件 Web快速开发软件 财务软件 购物车软件 医院帐务软件 crm software medical software 人事薪资软件payroll software 在线购物软件 销售软件 项目管理软件 房产不动产管理软件 生产软件 PDM软件 制造业软件 仓库软件 采购软件 进销存软件 危险源监控软件 物流软件 超市软件 银行软件 保险软件 汽车软件 医疗软件 电子软件 自动化软件 服装软件 烟草软件 分销管理软件 供应商管理软件

下载源码

框架文档

框架应用系统

演示运行

JiveJdon3

性能测试

Q&A 问答

技术支持

 

 

更多标签...



Jdon框架演示

JiveJdon
源码下载

VIP收费区

历史热点讨论排行榜




google yahoo 新浪ViVi 365Key网摘 天极网摘 CSDN网摘 添加到百度搜藏 POCO网摘





手机 add to google add to yahoo
联系我们 | 关于我们 | 广告联系 | 网站地图 | 设为首页

沪ICP证08026060 如有意见请与我们联系 Powered by JdonFramework
_×
您有新消息