findByPrimaryKey方法的参数和你客户端调用时候传递的参数类型不一致吧?
解决方案 »
- 菜鸟请教:在servlet中调用bean,部署的时候bean的class文件应该放在哪?
- 大家如何看这个平台?
- 一个关于Apache 2.2 webdav的问题~救命
- jndi使用的问题
- 如何用portlet实现一个页面里的portlet窗口之间的拖动,急~~~~~~~~~
- 寻求一个JSP拨打手机的功能
- jboss问题配置问题,麻烦各位高人看看,小弟不胜感激。
- RSA加密
- SSH、SSM框架多个dao操作同一个表,会有问题吗?
- java.lang.IllegalStateException: BeanFactory not initialized or already closed
- jbuilder9 与 websphere5.0 如何整合?请各位高手不啬指点一二 , 急急急 , 在线等
- 表名要改了,我的cmp能通过相关设置的改变而不需要重新写一次吗?
能说明一下Short != short, 区别在哪里么?
我觉得你还是仔细检查你的代码,一定是参数类型问题。
你写了主键类了吗!还要写主键类吗,我直接传主键的值不行么?
如果不行,主键类要如何编写?我把参数类型改为short后还是这样的错误
int->Integer double->Double....如果是String则不需要
method findByPrimaryKey(java.lang.Short) not found in interface testent.EmployeeHome
//-----------------
把你的HOME接口的代码贴出来吧...
import java.util.*;
import java.math.*;public interface EmployeeHome extends javax.ejb.EJBLocalHome {
public Employee create(BigDecimal id) throws CreateException;
public Employee findByPrimaryKey(BigDecimal id) throws FinderException;
}
entity中的主键必须是类?这不一定吧,高手指教!
java.math.BigDecimal key=new java.math.BigDecimal(empno);
Employee emp = empHome.findByPrimaryKey(key);应该就能ok了
Employee emp = emphome.findByPrimaryKey(key);我按照你的意思修改了一下,现在提示如下:
"DemoSesBean.java": Error #: 300 : constructor BigDecimal(java.lang.Short) not found in class java.math.BigDecimal at line 35, column 48
老兄,英语还可以吧 ^_^
BigDecimal的构造函数有BigDecimal(java.lang.String) 、BigDecimal(java.lang.Integer)....................
错了
没有BigDecimal(java.lang.Integer)这种
应该是BigDecimal(double d)
还有:BigDecimal(BigInteger val)
BigDecimal(BigInteger unscaledVal, int scale)