站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2EE 专题哪位大虾来看看啊,EJB中奇怪的问题,关于Timestamp 的

哪位大虾来看看啊,EJB中奇怪的问题,关于Timestamp 的

摘要: 哪位大虾来看看啊,EJB中奇怪的问题,关于Timestamp 的


下面是CMP中的方法类

package jfsfpz;

import javax.ejb.EntityBean;
import javax.ejb.EntityContext;
import java.sql.Timestamp;
import javax.ejb.CreateException;
import javax.ejb.RemoveException;
import java.math.BigDecimal;

public abstract class TransinfoBean
implements EntityBean {
EntityContext entityContext;
public TransinfoPK ejbCreate(String substaid, String lineid, String transid,
Integer statusflag, Timestamp nousedate) throws
CreateException {
setSubstaid(substaid);
setLineid(lineid);
setTransid(transid);
setStatusflag(statusflag);
setNousedate(nousedate);
return null;
}

public void ejbPostCreate(String substaid, String lineid, String transid,
Integer statusflag, Timestamp nousedate) throws
CreateException {
}

public void ejbRemove() throws RemoveException {
}

public abstract void setSubstaid(String substaid);

public abstract String getSubstaid();

public abstract void setLineid(String lineid);

public abstract String getLineid();

public abstract void setTransid(String transid);

public abstract String getTransid();

public abstract void setStatusflag(Integer statusflag);

public abstract Integer getStatusflag();

public abstract void setNousedate(Timestamp nousedate);

public abstract Timestamp getNousedate();


public void ejbLoad() {
}

public void ejbStore() {
}

public void ejbActivate() {
}

public void ejbPassivate() {
}

public void unsetEntityContext() {
this.entityContext = null;
}

public void setEntityContext(EntityContext entityContext) {
this.entityContext = entityContext;
}
}

//////////////////////////////////////////////////////////////////////////
下面的是一个DTO 方法

package jfsfpz;

import java.io.*;
import com.sun.jmx.snmp.Timestamp;
import java.math.BigDecimal;
//import java.sql.Timestamp;

public class TransinfoDTO
implements Serializable {

private String substaid;
private String lineid;
private String transid;
private Integer statusflag;
private Timestamp nousedate;

public TransinfoDTO() {
}

public TransinfoDTO(String substaid, String lineid,String transid
,Integer statusflag
, Timestamp nousedate){

this.substaid=substaid;
this.lineid=lineid;
this.transid=transid;
this.statusflag=statusflag;
this.nousedate=nousedate;

}
public String getSubstaid() {return substaid;}

public String getLineid() {return lineid;}

public String getTransid() {return transid;}

public Integer getStatusflag() {return statusflag;}

public Timestamp getNousedate() {return nousedate;}
}

///////////////////////////////////////////////////////////////////////////////////
下面的是SessionBean 中的一个方法

public TransinfoDTO[] getAllTransinfo() {
Collection coll=null;
ArrayList array=new ArrayList();
TransinfoDTO dto =new TransinfoDTO();

Timestamp time=new Timestamp(2);

try {
coll = Transinfohome.findAllTransinfo();
Iterator i = coll.iterator();
while (i.hasNext()) {
TransinfoRemote ejb = (TransinfoRemote) i.next();
dto = new TransinfoDTO(ejb.getSubstaid(), ejb.getLineid(),ejb.getTransid()
,ejb.getStatusflag()
//,time
,ejb.getNousedate()
); // TransinfoDTO end

array.add(dto);
}
}
catch (RemoteException ex) {
}
catch (FinderException ex) {
}
return (TransinfoDTO[]) array.toArray(new TransinfoDTO[0]);

}

每次在初始化这个dto= new TransinfoDTO(...) 对象时,总是在第5个参数那里出错 ejb.getNousedate(),
如果参数换成 Timestamp time=new Timestamp(2); 定义的time, 就不会出错

错误信息:
"JfsfpzSessBean.java": cannot find symbol; symbol : constructor

TransinfoDTO(java.lang.String,java.lang.String,java.lang.String,java.lang.Integer,java.sql.Timestamp), location:

class jfsfpz.TransinfoDTO at line 333, column 17

"JfsfpzSessBean.java": internal error; cannot instantiate jfsfpz.TransinfoDTO. at jfsfpz.TransinfoDTO to ()

at line 333, column 17


另外,这是从SQLSERVER上建立的CMP,这个字段在SQLSERVER上是 datetime 类型
很是纳闷 ???


想不通,问题还是没有解决,
不就是个参数么,我传进去的类型也是正确的,怎么就报错呢,

而且我另做了一个其它的类,也是用这样的方式往里面传一个这样的参数(Timestamp ),
就不报错,打印出来是个null

0_o~!!


cmp 中的引用 import java.sql.Timestamp;

DTO 中的引用 import com.sun.jmx.snmp.Timestamp;

问题就出在这儿,唉



d


↑返回目录
前一篇: JNDI能带来什么好处?
后一篇: 紧急求助,weblogic报错“超出系统资源”,不明原因,击溃服务器——在线等!