使用 EJB 提供程序

发表于:2007-06-11来源:作者:点击数: 标签:
使用 EJB 提供程序 EJB 提供程序允许 WSIF 客户机调用企业 bean。EJB 客户机 JAR 在客户机运行时中必须与当前的提供程序一起提供。企业 bean 是使用正常 EJB 调用方法、R MI -IIOP 和当前 安全 性与事务上下文调用的。如果在某个事务内调用 EJB 提供程序,则

使用 EJB 提供程序

EJB 提供程序允许 WSIF 客户机调用企业 bean。EJB 客户机 JAR 在客户机运行时中必须与当前的提供程序一起提供。企业 bean 是使用正常 EJB 调用方法、RMI-IIOP 和当前安全性与事务上下文调用的。如果在某个事务内调用 EJB 提供程序,则该事务将传递至正在进行的服务,并且将应用标准 EJB 事务属性。

如果存在多个服务实现,则由服务的提供程序确保它们提供了相同的语义。例如,如果存在事务性,则 bean 部署者应指定 TX_REQUIRES_NEW 以强制执行新的事务。

EJB 提供程序 — 编写 WSDL 扩展

EJB 提供程序允许通过 RMI/IIOP 调用企业 bean。为了使用 EJB 提供程序,您需要在 WSDL 中指定此绑定:

<!-- EJB binding -->
    <binding .... >
        <ejb:binding />
        <format:typeMapping style="Java" encoding="Java"/>? 
            <format:typeMap name="qname" formatType="nmtoken"/>*
        </format:typeMapping>
        <operation>*
            <ejb:operation
                methodName="nmtoken"
                parameterOrder="nmtoken"
                returnPart="nmtoken"?
                interface="remote|home" />
            <input name="nmtoken"? />?
            <output name="nmtoken"? />?
            <fault name="nmtoken"? />?
        </operation>
    </binding>

其中 ? 表示可选的,而 * 表示 0 或更多。

注意:

  • format:typeMap name 属性是其中一个 EJB 操作使用的简单类型或复杂类型的限定名称。
  • format:typeMap formatType 属性是 Java 类的全限定类名,此 Java 类是由名称指定的元素所映射的。
  • ejb:operation methodName 属性是操作对企业 bean 调用的方法的名称。
  • ejb:operation parameterOrder 属性包含空格分隔的部件名列表,它定义了将名称传递至 EJB 方法的顺序。
  • ejb:operation interface 属性必须设置为“remote”或“home”。该值指定企业 bean 的接口,在此接口上可以访问由 method 属性命名的方法。
<service ... >
        <port>*
            <ejb:address
                class="nmtoken"
                jndiName="nmtoken"
                initialContextFactory="nmtoken" ?
                jndiProviderURL="nmtoken" ? />
        </port>
   </service>

注意:

  • ejb:address class 属性指定企业 bean 的全限定类名主接口类。
  • ejb:address jndiName 属性指定用于查找企业 bean 的完整 JNDI 名称。
  • ejb:address initialContextFactory 属性是可选的,它指定初始上下文生成器类。
  • ejb:address jndiProviderURL 属性是可选的,它指定 JNDI 提供程序 URL。


原文转自:http://www.ltesting.net

...