客户端根本就不应该知道server端是不是用了EJB,所以客户端根本没理由针对EJB的server做任何特殊的部署。你的想法就整个有问题。

解决方案 »

  1.   

    Schlemiel(维特根斯坦的扇子) 说的对。
      

  2.   

    客户端是不是也要包含EJB组件中的几个类文件呢?如果不是,那么的客户端程序要建立远程和Home对象的接口怎么办呢?不是会报ClassNotFound么?
      

  3.   

    在我看来,根本没理由让客户端去调用什么Home对象,应该通过更一般化的调用方式(例如JAX-RPC或者web client),这样server上的程序才能保证灵活性。如果你都让client调用Home对象了,以后你的server逻辑不想用EJB实现了怎么办?
      

  4.   

    提问不需要这么耀眼的题目吧?我的想法是,如果client还要去了解服务器端的细节,那么设计这个系统的人应该好好的回去学学设计模式。
      

  5.   

    那用web start启动application怎么样
      

  6.   

    也許是這樣的,我在chinajavaworld看到的多一些
      

  7.   

    用web start好处在于不必担心ClassNotFoundException
    还可以自动更新,也没什么安全限制
      

  8.   

    对于Schlemiel(维特根斯坦的扇子)的提议,我想web start 也是一不错的补充
    请大家指教
      

  9.   

    我同意,web start的确是一种不错的发布方式。
      

  10.   

    lxj2002499 (曹阿南)兄,我以部署weblogic application客户端为例解答你的问题:访问EJB的客户端application既可以是简单的命令行,又可以是用swing或者awt开发的GUI程序.部署weblogic的application客户端,在客户端机器上需要weblogic.jar,weblogic_sp.jar(如果有的话),所要调用的EJB的home和remote接口类,application类文件,当然客户端要有JVM环境.客户端访问服务器的操作可以写在代码中,更好的做法是写在客户端属性文件中,由程序动态解析得到服务器context factory和地址/端口.为了方便application的部署,J2EE规范中允许将application打包在ear文件中,且可以读取客户端部署操作符client-application.xml.客户端程序可以通过weblogic.ClientDeployer从ear文件中得到客户端application的jar文件,然后通过java weblogic.j2eeclient.Main clientjar URL [application args]命令连到具体的weblogic server.据我所知,用application做客户端的项目不多,我们公司和我所知道的几个公司都没有做过.一是因为J2EE的优势就在于它的服务器端开发,二在于用swing开发很复杂.application有jsp和servlet代替不了的优势,比如实时的在线用户监控如果是application客户端就很容易做到,但jsp/servlet很难.其他的像数据同步,服务器到客户端通讯等都是application可以搞定但jsp/servlet不能胜任的.客户端不必了解服务器端的实现细节,但确需要调用服务器端程序必要的类和服务器端组件的接口.最后跟 lxj2002499 (曹阿南)兄说一下:J2EE高手并不一定是回答问题的高手,有人可能不会写swing程序,但他可以设计J2EE框架.
    --------------------
    并非高手
      

  11.   

    要是回这个就算高手的话,那高手也太多了吧???
    我已经回答过你了,客户端用application还是jsp,调用ejb代码是完全一样的!!如果你不会jsp或servlet调用ejb,那你就先找点资料自己看吧; ------------------------------------------------------
               我们还年轻牛奶会有的奶牛也会有的 
                 可天天在 csdn 混这些会有吗 ??