1

私の現在のプロジェクトでは、休止状態の JPA を永続化ライブラリとして使用しています。パラメータをクエリに設定すると、奇妙なエラーが発生します。

私は次のものを持っています:

List<Location> loca = JPA.em().createQuery(
    "SELECT location FROM Location as location"
    + " where "
    + "( 6371 * acos(cos(PI() / 180 * :platitude ) * cos(PI() / 180 *location.latitude  ) * "
    + "cos(PI() / 180 *location.longitude  - PI() / 180 *:plongitude ) + sin( PI() / 180 *:platitude) * "
    + "sin(PI() / 180 *location.latitude ) ) ) < :radius")
    .setParameter("radius", 10000.0)
    .setParameter("platitude", new Double(latitude))
    .setParameter("plongitude", new Double(longitude))
    .getResultList();

結果エラーは次のとおりです。

[IllegalArgumentException: パラメータ値 [43.239474] は型 [java.lang.Integer] と一致しませんでした]

ただし、精度が失われるため、この値を整数にキャストすることはできません。

助言がありますか?

4

2 に答える 2