2017-07-06 12 views
0

この質問は2,3年前に(類似のタイトルで)答えられましたが、私はそれに強く苦しんでいます。関係なく、私は、()述語に入れて何を表現、私はHibernateのエラーを取得しておくないようです:Querydsl - 検索されたcase文のデータ型を特定できません

は基本的にここで検索case文

のデータ型を判別できませんでした原因になっている単純化されたコードセグメントであります問題:

SimpleExpression<String> adjustmentFlag = 
     new CaseBuilder() 
       .when(myObject.id.isNotNull()) 
       .then(Expressions.asString("true")) 
       .otherwise(Expressions.asString("false")); 

私は簡単な選択なステートメントでそれを使用すると、私が手に特定のエラーがこれです:org.hibernate.QueryException:によって引き起こさ

検索case文のデータ型を判別できませんでした[選択。 ..stuff ...、(ケース(myObject.idがnullでない場合)?2 else?3 end)....テーブルリスト...]

私が)またはotherwise()メソッドでは、何も動作していないようです。他の投稿から、彼らは表現の使い方について話します。私はあらゆる種類の試みをしましたが、毎回同じエラーが発生します。

他にも次のような問題がありますか?これは一般的な問題ではないかと思われますが、次に進む方法については困惑しています。どんな助けもありがとう。

Querydsl 4.1.3は、Hibernate 5.0.10使用

ありがとう!

答えて

0

心配しません。実際はthen()やotherwise()メソッドの式ではなく、when()条件で使用していたリテラルです。私は式を使用するようにそれらを変更しました。それは今働いています。

関連する問題