問題タブ [transient]
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.
windows-server-2003 - 永続的な一時的な障害を生成する必要がある
更新: すべてのメール サーバーが「標準」に従ってエラーを返すとは限らないことを発見したとき、4.xx と 5.xx の違いは私の心配のほとんどではありませんでした。現在、すべての種類の返信メールを失敗として処理することを選択していますが、回答が得られて他の人の助けになる場合に備えて、この質問をここに残します.
私は、POP3 アカウントを読み取り、永続的なエラー (5.xx 配信ステータス) として返されたメールと永続的な一時的なエラー (4.xx 配信ステータス) として返されたメールを区別し、4. xx DSN を検出し、5.xx DSN に対して電子メールに不良のフラグを立てます。DSN 本体を手動で編集して 5.xx を 4.xx に変更するのは簡単ですが、管理者は「実際の」4.xx を返すことを望んでいます。そうするのにとても苦労しています。
テスト環境は、MS の SMTP および POP3 を実行する Windows 2003 サーバーです。ターゲットのメール アドレス (5.xx) のクォータを超えて、アカウントをロックしようとしました (2.xx で、メールを受信できません)。
これは、誰かが興味を持っている場合に備えて、リース終了の通知用です。そのため、メールに不良のフラグを立てるか、失敗が永続的なものではなかったことを再試行することに関心があります.
hibernate - Hibernate-pojoでTransientオブジェクトを宣言する
TableTableAのオブジェクトAであるpojoがあります
TableA (int a1,int a2)
。
テーブルを埋めるために、(int a1、int a2、boolean b3)を返すクエリを実行します(そして複数のデータチェックを実行します)
b3はTableAでは無効ですが、両方に同じpojoを使用したいと思います(これは非常に大きなpojoであり、クエリのためだけに1つ持つことは主要なコードの重複になります)
ポジョで宣言しました
そして、クエリで、b3値を取得することを期待していると宣言しました。
しかし、Hibernateはパラメーターを無視し、「setB3()」を使用しません。@ Transientを削除すると、機能します(そして、当然、テーブルに挿入すると失敗します)。したがって、すべての名前が正しいです。
どうすればこれを修正できますか?
ありがとう!
c# - Castle Windsor: 一時的なコンポーネントはガベージ コレクションの対象になりますか?
Castle Windsor を使用して、一時的なライフスタイルで構成されたコンポーネントを作成しました。
次のように使用されます。
私の質問は、サービス インスタンスが範囲外になった後にガベージ コレクションされるのか、それともキャッスル ウィンザーが参照を保持するのかということです。これは、後者が当てはまる可能性があることを意味します-しかし、そこに投稿されたリンクを調べた後、議論が参照を保持することに関するものなのか、それとも IDisposable を実装する場合にオブジェクトが破棄されることを保証することに関するものなのかわかりません. オブジェクトを破棄する必要はありません。
ウィンザー城がインスタンスを保持している場合、これを防ぐ簡単な方法はありますか (おそらく構成によって) ?
編集
リリース追跡ポリシーを設定する必要があるようです。これは xml 構成ファイルで構成できますか、それともコードで設定する必要がありますか? コンポーネントごとにリリース追跡ポリシーを設定できますか?
java - Java に一時フィールドがあるのはなぜですか?
Java に一時フィールドがあるのはなぜですか?
java - Hibernateがパブリックメンバーをフェッチしない
次のコードを検討してください。
A をフェッチすると、B (別の休止状態のエンティティ) を手動で埋めています。ab を使用してアクセスしようとすると失敗しますが、a.getB(); を使用すると失敗します。その後、成功します。
どうしてこれなの?
c# - NHibernate、IDictionary の保存: TransientObjectException
私のクラス Case には、Entity (クラス) をキーとして、Roles (列挙型) を値として持つ IDictionary があります。Case の新しいインスタンス (永続化されていない) を保存しようとすると、IDictionary が Entity の新しいインスタンスで満たされている場合、次のエラーが発生します。
NHibernate.TransientObjectException: オブジェクトが保存されていない一時インスタンスを参照しています - フラッシュする前に一時インスタンスを保存してください。タイプ: エンティティ
これらはクラスです (役割は列挙型です):
と
また、マッピングは次のとおりです。
と
テストコードのサンプル:
テストコードでは、newCase-instance は保持されますが、新しいエンティティは保持されません。version
エンティティに < > タグを追加したり、保存されていない値をいじったりするなど、さまざまなことを試しましたが、何も役に立たないようです。マッピングからわかるように、cascade="save-update" があります。何か案は?
static - SQLITE_TRANSIENT と SQLITE_STATIC をいつ使用するか?
sqlite3 でテキスト列を作成/更新したいと考えています。作成/更新後に行を取得すると、テキストは「?」になります。ただし、整数値は適切に保持されます。
私のテキストステートメントは次のようになります。
SQLITE_TRANSIENT と SQLITE_STATIC を試しました。どちらの場合も同じ結果が得られるようです ('?')。また、テキスト値が適切な SQL ステートメントに渡されたときに有効であることも確認しました。
何か案は?
rest - 一時的な REST 表現
アイスクリーム店をモデル化する RESTful なハイパーテキスト駆動型サービスがあるとします。店舗の管理を改善するために、販売された各種類のアイスクリームの数量と金額をリストする日次レポートを表示できるようにしたいと考えています。
このレポート機能は、DailyReport というリソースとして公開できるようです。DailyReport はすぐに生成でき、実際にサーバーにレポートを保存する利点はないようです。DailyReport が必要な日もあれば、DailyReport を取得する必要がない日もあります。さらに、DailyReports をサーバーに保存すると、クライアントの実装が複雑になり、不要になったレポートを忘れずに削除する必要があります。
DailyReport は一時的なものです。その表現は一度だけ取得できます。これを実装する 1 つの方法は、リンク "/daily-reports" を提供することです。これは、その日の売上に関する情報をリストする DailyReport 表現を含む応答を返す POST です。
編集:私は本当に POST リクエストをしたいとも言いましょう。DailyReport には、アイスクリームの種類をアルファベット順、ドルの値で並べ替えたり、1 時間ごとの内訳を含めたり、オプションでその日の気温を含めたり、特定のアイスクリームの種類を (リストとして) 除外したりするなど、ビューを作成するためのさまざまなオプションがあります。GET でクエリ パラメーターを使用するのではなく、適切なオプションを使用して DailyReport 表現を POST したいと思います (各オプションを文書化するために明確に定義されたカスタム メディア タイプを使用します)。返される表現には、レポート自体とともにオプションが表示されます。
これは問題について考える正しい方法ですか、それとも代わりに他のアプローチを使用する必要がありますか? 正しい場合、DailyReport リソースを実装する際に特に考慮すべき点は何ですか? (たとえば、POST 要求の後に戻るときに Location ヘッダーを設定するのはおそらく適切ではありません)。
database - 外部ソース (HashMap) からの Hibernate プロパティのロード
User オブジェクト (user_from および user_to) に関連付けられた Message オブジェクトがあります。Hibernate (JPA アノテーション付き) を使用して Message インスタンスをデータベースに永続化し、user_id を永続化します。
User オブジェクトもデータベースに保存されますが、メッセージを取得するときは、データベースからではなくメモリ内の Map から User を取得したいと考えています。
その理由は、データベース (Facebook データ) に永続化できないいくつかの一時的な属性があり、Facebook データが既にメモリに読み込まれている場合、Facebook にデータを再クエリしたくないためです。
これは可能ですか、または UserType を作成することによって行う必要がありますか? UserType、Message、User、またはカスタム マッパーとして定義する必要があるクラスはどれですか? カスタムマッパーの場合、JPA アノテーションを使用してマッパーを関連付けるにはどうすればよいですか (構成を使用して meta-type="com.example.hibernate.customtype.CustomerTypeMapper" を設定する例を見ました)
ご助力ありがとうございます!
ユーザークラス:
メッセージ クラス:
nhibernate - AuditInterceptor の使用 - オブジェクトは保存されていない一時インスタンスを参照します - フラッシュする前に一時インスタンスを保存します
DomainObject の監査フィールドのドメイン モデルは、 AuditInterceptorを使用して入力されます。
このManyToMany関係では、MessageDistributionは、AuditInterceptor を使用するためにDomainObjectも実装します。これにより、FluentNHibernate マッピングでHasManyToMany句を使用できなくなりました。
これがマッピングコードです。
以下は、上記の関係を実装するためのテストです。
テスト ランナーを使用してテストを実行すると、行 _repository.Save( message ); で次のエラーが発生します。
私のAuditInterceptorには
「OnSave および OnFlushDirty」イベントで。
Message と MessageDistribution が通過していることがわかりますが、Distribution エンティティにはまったく影響がありません。
私の質問は、私の FluentMapping に何か問題がありますか? 「逆」を間違った場所に持っていますか?誰かがこの状況に遭遇しましたか?