线程“main”中的异常javax.ejb.EJBException:java.io.StreamCorruptedException:读取对象时发现意外的字节

时间:2015-10-10 23:10:16

标签: java

我有这堂课:

@Entity
@Table(name="T_picture")

public class Picture implements Serializable {


    private Integer idPicture;
    private String link;
    private Product product;
    private static final long serialVersionUID = 1L;....................}

我需要按产品显示图片列表所以,我有这个方法

 @Override  public List<Picture> findByProduct(Product p) {         
    return 
    em.createQuery("select p from Picture p where
    s.product=:x",Picture.class).
                 setParameter("x",p)
                     .getResultList();  
 }

所以当我跑步时,我得到了这个例外

  

线程“main”中的异常javax.ejb.EJBException:       java.io.StreamCorruptedException:读取时发现意外的字节       一个对象:254在       org.jboss.ejb.client.EJBInvocationHandler.doInvoke(EJBInvocationHandler.java:236         在        org.jboss.ejb.client.EJBInvocationHandler.doInvoke(EJBInvocationHandler.java:181

1 个答案:

答案 0 :(得分:0)

在搜索了相同的错误消息后,Google到了这里。 就我而言,该错误是Jboss Client Bug所提到的here

但是!经过长时间的跟踪,我发现我混用了同一个名称类“ A”和相同的包名称“ com.abc.def”,但来源不同。

第一类“ com.abc.def.A”来自EJB接口。 第二个类“ com.abc.def.A”来自我的动态Web项目。

由于从相同的名称和包中分配了不同的类不是编译错误,因此它的确很麻烦。