で更新できませんメンバー変数に@Lob
と注釈されたエンティティがあります。私はいくつかの計算を実行し、その後私はmerge()
呼び出しを行います。これはステートレスBeanで行われます。何らかの理由でエンティティを更新しません。例外も例外ではありません。私はドットのstackoverflowのドットコムを助けてください、あなたは私の唯一の希望です。エンティティをbyte []メンバー変数
これは基本的に私が持っているものです。
マイエンティティ:
@Entity
@Table(name="my_entity")
public class MyEntity implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name="id")
private long id;
@Lob
@Column(name="data")
private byte[] data;
// Getters and Setters for both variables...
}
その後、私は私のステートレスBeanを持っています。私は自分が持っているものを骨格にします。私はデータに作用する1分ごとに呼ばれるタイマーを持っています。
public @Stateless class MyBean implements IMyBeanRemote {
@PersistenceContext
private EntityManager em;
@Resource
javax.ejb.TimerService timerService;
@Timeout
public void doLogic(javax.ejb.Timer time) {
MyEntity e = getMyEntity(1L);
doMoreLogic(e);
}
private MyEntity getMyEntity(long id) {
return em.find(MyEntity.class, id);
}
private void doMoreLogic(MyEntity entity) {
entity.getData()[0] = 123;
em.merge(entity);
}
}
これは基本的に私のコードが行っていることを反映していると思います。私が最初にMyEntityを作成してpersist()すると、それが動作します。
これをすべて入力した後、どこででもそのデータを変更するかどうかを確認することにしました。私はそれを思い出し、デバッグテストとしてデータをリセットしていました。 =(全て解決!睡眠の
あなたがポストにあなたのコードを追加することはできますか? –