2017-03-27 13 views
0

私は非常に奇妙なバグを持っていると私は何が起こっているか分かりません。 同じGETリクエストは異なる応答を与える、奇妙な行動

私はこのようなエンドポイントを持っている:

{ "ioConfigurationId: http://localhost:8080/aigateway/rest/ioconfiguration/3

いくつかの時間が、私は正しい応答を得る:私はこのURLへのリクエストを作っています

private void init() { 
    if (ioConfigurationDAO == null) { 
     ioConfigurationDAO = new IOConfigurationDAO(); 
     ioConfigurationDAO.init(); 
    } 

    property = new AigatewayProperty(); 
} 

    @GET 
    @Path("/{id : \\d+}") 
    @Produces(MediaType.APPLICATION_JSON) 
    public Response getIoConfiguration(@PathParam("id") Integer id) { 
    init(); 
    if (!ChannelName.isValidChannel(id)) { 
     return Response.status(Response.Status.NOT_FOUND).build(); 
    } 
    IOConfiguration ioConfig = ioConfigurationDAO.findIOConfiguration("CH" + id); 
    System.out.println(ioConfig.getConversionType()); 
    // close(); 
    return Response.status(Response.Status.OK).entity(ioConfig).build(); 
    } 

":" CH3" 、 "アクティブ":真、 "名前": "1"、 "conversionType": "線形"、 "MINFO":0.32、 "bInfo":0.55、 "voltageDivide": "/ 4"、」 sampleRange ":" 24 ビット "、" samplePeriod ":10、" storeRaw ":false、" storeCo defaultGraph: "偽" nverted ":" 行 " "タイトル": ""、 "単位": ""、 "rangeLowerbound":0、 "rangeUpperbound":100、 "コード":" 関数 conversion_CH3(入力) {\ n \のtreturn入力;の\ n} "}

時々、私はNULL値と間違った応答を得る:

{" ioConfigurationId ":" CH3" 、 "アクティブ" NULL」名前 ":ヌル、" conversionType ":ヌル、" MINFO ":ヌル、" bInfo ":ヌル、" voltageDivide ":ヌル、" sampleRange ":ヌル、" samplePeriod ":ヌル、" storeRaw ":ヌル、" storeConverted」 :ヌル、 "defaultGraph":ヌル、 "タイトル":ヌル、 "単位"、 "rangeLowerbound" NULL: "rangeUpperbound" ヌル:nullで、 "コード":NULL}

私は何が起こっているのか分かりません。私は手動で動作しません、私のEJB注釈becuase私のエンティティマネージャを開始する必要が

、と私は知らないので、私は、データベースへの私の接続を閉じていないです:言及する

ことの一つは、ということです出願が終了するとき。これがこの問題の原因であるかどうかはわかりません。

誰かが私に助けてください、あなたがもっと情報を必要とするならば、私は分かち合うつもりです。

ありがとうございます!

答えて

0

私は適切にEJBを使用することによって、この問題を解決しました。私がこの問題を引き起こしていると思う唯一の理由は、私がエンティティマネージャを閉じることがないからです。次回は新しいエンティティを作成しようとしているときに問題が発生しています。 。