問題タブ [siena]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 遊ぶ!+シエナ+GAE+ JUnit
Playでいくつかの基本的なユニットテストを起動して実行しようとしています!意図されたデプロイメントターゲットとしてGAEを備えたSiena永続性ライブラリを使用するフレームワーク。
プロジェクトを適切に構成し、アプリをGAEにデプロイできます。基本的なドメインオブジェクトを作成しました。
および基本的な単体テスト:
Playでそれを理解しました!1.0.3、SienaのFixturesサポートはまだありません。これは1.1で修正されるはずですが、それまでの間、Fixtures.deleteAll()の代わりに、各テストの前にテストデータベースをクリアするために何を使用する必要がありますか?
データベースが以前に挿入されたレコードを保持しているため、現在、2番目のアサーションは失敗します。
java - @OneToMany コレクションでページングを行うにはどうすればよいですか
Post エンティティと Comment エンティティ、および 1 対多の関係があるとします。
このようなページングを実現するにはどうすればよいですか:
JPA の上で @OneToMany コレクションを使用して動的ページングをエミュレートすることは可能ですか、それとも JPA の関連付けメカニズムを完全に書き直す必要がありますか? (たとえば、ページング、並べ替え、および検索を管理できる PersistentList コレクション型を作成します)。
PS: 最近 Play! を見つけました。フレームワークは、JPA: Siena の上で非常に興味深い lib を使用します。Siena は非常に使いやすく、JPA/Hibernate の優れた抽象化です。しかし、その関連付けでページングを行う方法が見つかりません。
アップデート:
Play フレームワークには、Django に似たクエリ構文があります。
どこ
Play でカスタマイズされたクエリタイプである JPAQuery オブジェクトを返します。
ただし、関連するコレクションを使用すると、たとえば次のようになります。
ページングやその他のクエリをサポートしていないリストを返すだけです。
どのように拡張するかを考えていたので、
また、JPAQuery オブジェクトなどを返す場合は、「クエリ」コレクションに対してクエリを実行できます。
または、実際にコメントを取得せずに新しいコメントを挿入します。
私が最初に考えたのは、List のサブクラスを作成すると、Post クラスは次のようになるということです。
また、QueryList には、JPAQuery のメソッドを間接的に参照する fetch()、from() メソッドがあります。
しかし、Hibernate/JPA がこれを認識するか、干渉するかはわかりません。
java - イービーンまたはシエナはどのくらい成熟していますか?
前回、Hibernate について多くの不満を聞きました。実際、Hibernate についてもいくつかのつらい経験があります。それで、イービーンとシエナについて読みました。
どちらも興味深いアプローチです。残念ながら、データベース アクセス レイヤーは非常に簡単に作成できますが、プロジェクトが大きくなり、優れたデータベース テーブルを処理する必要がある場合、それが適切かどうかはわかります。そのため、そのようなツールを評価するのは非常に困難です。Hibernate はよく知られており、問題を解決できることは間違いありません。時には多くのことを学ぶ必要がありますが、それは解決できます。
イーブイはどうですか?実際のアプリケーションはありますか? どのデータベースがサポートされていますか? 信頼できますか?
もう少し検索したところ、ORM フレームワークは他にもたくさんあることがわかりました。少なくとも 1 つの信頼できるフレームワークはありますか?
google-app-engine - PlayGaeの永続性がSetで機能しない
これは私のユーザークラスです
それを作成してデータベースに挿入すると、正常に機能しているようです。しかし、findByEmail(email)を使用してDBからリコールすると。すべてのセット(idEventsなど)のnullをユーザーにロードします。
sienaモジュールとgaeモジュールでplay1.1を使用しています。
何が間違っている可能性があるかについてのアイデアはありますか?セットをパブリックとして宣言し、セットの代わりにリストを使用しようとしましたが、何も機能しませんでした。
ありがとう
java - シエナとの遊びの複数の関係
2つの1対多の関係を持つエンティティを作成しています。イベントには、ユーザーフィールドと場所フィールドがあります。自動クエリを使用しようとしていますが、このコードは常に空のリストを返します。
イベントクラスは
このようにEventクラスを変更すると
上記の同じコードは、1つのイベントを含むリストを返します(私が期待したもの)
編集:これはPlaceクラスです
これはUserクラスです
MyModelはsiena.Modelのスーパークラスでしたが、何の役にも立たないことを知っているので、Modelに戻しました。私はplay1.1でplay-siena1.5を使用しています
java - シエナの別のオブジェクトのオブジェクトから文字列フィールドを取得できません
別のオブジェクト内にあるオブジェクト内にあるフィールドを取得するのに問題があります。いくつかのフィールドを取得できますが、他のフィールドは取得できません。
これは、このエラーを再現するために作成したテストです。
ラインで失敗する
DBへの他の呼び出しを行ってそのフィールドに到達できるので、これは契約違反ではありませんが、一部のフィールドにアクセスでき、他のフィールドにアクセスできないのは奇妙に思えます
MyUser で、次の注釈を付けて、または付けずに「nome」フィールドを宣言しようとしました
search - シエナクエリ検索はどのように機能しますか?
文字列を含むすべての要素を返すsienaでクエリを実行する方法に関するドキュメントを探しています。私は次のようなことを試みました
ただし、フィルタリングなしですべての要素を返します。
scala - このメソッドの結果タイプをどのように定義しますか?
次の場合、メソッドの戻り型を定義するにはどうすればよいですか。
作業コード
動作しないコード:
発生したエラーは次のとおりです。
再帰メソッドgetModelには結果タイプが必要です
google-app-engine - PlayFramework1.2.2用にcrudsienaモジュールを構成できません
Play Frramework(1.2.2)+ siena(2.0.2)+ crudsiena(2.0.1)+ gae(1.4)で基本的なアプリケーションを作成しようとしています。これらはすべて、playの依存関係管理システムから取得したものです。私はドキュメントのサンプルをフォローしていましたが、奇妙なエラーが発生しました:
見つかりませんels.listアクションが見つかりません
そして、後で登録されたルートで同じ「食べられた」クラス名よりも:
GET / admin /?els.index
GET / admin / mymodels els.list
GET / admin / mymodels / new els.blank
GET / admin / mymodels / {id} els.show
スタックトレースは、次の点で非常に単純です。
私のファイルは次のようになります:
app / models / MyModels.java:
app / models / MyModel.java:
+ / admin module:crudsienaに設定されたルート+dependencies.ymlは、gae、siena、およびcrudsienaに関する行を追加しました
他のファイルは変更されません。
誰かが私が間違っていることを知っていますか?
アドバイスありがとうございます。