问题1,你没有配置好Datasource
问题2,你的client调用是错误的。根据错误猜测,client是EJBHome,所以先从client得到EJBObject对象,然后再调用removeSubTab()。如果用reflection的话,我可以写出代码:Object remote = client.getClass().getMethod("create",null).invoke(ref,null);
remote.getClass().getMethod("removeSubTab",new Class[]{String}).
invoke(remote,new Object[]{"aa"});
问题2,你的client调用是错误的。根据错误猜测,client是EJBHome,所以先从client得到EJBObject对象,然后再调用removeSubTab()。如果用reflection的话,我可以写出代码:Object remote = client.getClass().getMethod("create",null).invoke(ref,null);
remote.getClass().getMethod("removeSubTab",new Class[]{String}).
invoke(remote,new Object[]{"aa"});
问题2,client端也是生成向导中选定session bean之后自动生成的。
关于home,localhome,bean的调用,一般的ejb书都会介绍
stadardJbossCmp-jdbc那个datasource还要配置一下的
上次我好像也遇到过这个问题。。
调用应该不难吧,client先得到sessionBean的home接口之后-》remote接口。。
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<jndi-name>OracleDS</jndi-name>
<connection-url>jdbc:oracle:thin:@192.168.211.214:1521:mpay</connection-url>
<!-- Here are a couple of the possible OCI configurations.
For more information, see http://otn.oracle.com/docs/products/oracle9i/doc_library/release2/java.920/a96654/toc.htm <connection-url>jdbc:oracle:oci:@youroracle-tns-name</connection-url>
or
<connection-url>jdbc:oracle:oci:@(description=(address=(host=youroraclehost)(protocol=tcp)(port=1521))(connect_data=(SERVICE_NAME=yourservicename)))</connection-url> Clearly, its better to have TNS set up properly.
-->
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<user-name>mlottery</user-name>
<password>mlottery</password>
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
</local-tx-datasource>
</datasources>
jbosscmp-jdbc.xml的内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jbosscmp-jdbc PUBLIC "-//JBoss//DTD JBOSSCMP-JDBC 3.2//EN" "http://www.jboss.org/j2ee/dtd/jbosscmp-jdbc_3_2.dtd">
<jbosscmp-jdbc>
<enterprise-beans>
<entity>
<ejb-name>NmSubsystemTab</ejb-name>
<datasource>OracleDS</datasource>
<datasource-mapping>Oracle8</datasource-mapping>
<table-name>NM_SUBSYSTEM_TAB</table-name>
<cmp-field>
<field-name>subsystemid</field-name>
<column-name>SUBSYSTEMID</column-name>
</cmp-field>
<cmp-field>
<field-name>subsystemname</field-name>
<column-name>SUBSYSTEMNAME</column-name>
</cmp-field>
<cmp-field>
<field-name>hostid</field-name>
<column-name>HOSTID</column-name>
</cmp-field>
<cmp-field>
<field-name>workpath</field-name>
<column-name>WORKPATH</column-name>
</cmp-field>
<cmp-field>
<field-name>description</field-name>
<column-name>DESCRIPTION</column-name>
</cmp-field>
<cmp-field>
<field-name>syswatch</field-name>
<column-name>SYSWATCH</column-name>
</cmp-field>
</entity>
</enterprise-beans>
</jbosscmp-jdbc>
MAPPING configuration error for request URI /
jbosscmp-jdbc.xml中我不是用oracle:
<defaults>
<datasource>java:/DB</datasource>
<datasource-mapping>Hypersonic SQL</datasource-mapping>
<preferred-relation-mapping>forgein-key</preferred-relation-mapping>
</defaults>至于MAPPING configuration error for request URI /
不清楚,好像和这个关系不大??????(愚见,楼下高手继续)
我的jbulder10总报措
Unable to load document from file (D:/jbproject/EJBtraining/EJBModule1/META-INF/jbosscmp-jdbc.xml)
Connection timed out: connect: Connection timed out: connect
请问这个是为什么?
另外系统每一次修改保存,都要整个重编译一下,请问这个可不可以设置一下取消了?