سؤال

أحاول بناء تطبيق قاعدة بيانات باستخدام GWT 1.5.3.أستخدم تعليقات JPA التوضيحية مع كائناتي.يبدو أن RPC الخاص بـ GWT يعمل بشكل جيد في الوضع المستضاف.ولكن عندما أحاول ترجمة تطبيقي باستخدام برنامج GWT-compiler، تظهر لي أخطاء مثل:"لا يمكن حل استيراد javax.persistence"، "لا يمكن حل الكيان إلى نوع".تم تضمين toplink-essentials.jar بالفعل في مسار مشروعي.ما هي الإعدادات الأخرى التي أحتاجها لحل هذه المشكلة؟

هل كانت مفيدة؟

المحلول 4

وطيب، ولقد وجدت ما كنت في عداد المفقودين. أنا في حاجة لتشمل نقابة الصحفيين-شروح-source.jar في طريقي GWT مترجم في برنامج نصي من اسم التطبيق compile.cmd (أو في ملف البناء النمل). بالمناسبة يمكن لأحد أن يقول لي مصدر هذا الملف النقابة-شروح-source.jar؟

نصائح أخرى

ويمكنك استخدام جلعاد ( http://sourceforge.net/projects/gilead/ ) مكتبة لإدارة بسلاسة الكيانات JPA مع GWT.

والتحيات

وتحتاج إلى تضمين شفرة المصدر لشروح النقابة في مسار بناء لمشروع GWT الخاصة بك. انظر هنا لمزيد من التفاصيل:

HTTP: // التعليمات البرمجية. google.com/p/google-web-toolkit/issues/detail؟id=1830&can=1&q=jpa

وعلى وجه التحديد هذا الملف جرة والتي سوف تحدد مشكلتك:

HTTP: // google- web-toolkit.googlecode.com/issues/attachment؟aid=1475633892125294312&name=jpa-annotations-source.jar

المشكلة العامة في JPA وGWT هي أن GWT نفسها لا تدعم فئات JPA الفاخرة، لذلك عليك فقط إنشاء كيانات POJO البسيطة المستمرة DTO التي تنفذ java.io.Serializable ولديها تعليقات توضيحية بسيطة لموارد JPA.تحتاج إلى إنشاء فئات الكيانات في نطاق عميل GWT إما وضعها ضمن حزمة yourproject.client أو إضافتها

مسار المصدر = "العميل"

مسار المصدر = "مجلدOfYourEntities"

في ملف YouProject.gwt.xml الخاص بمشروع GWT.سيتضمن ذلك كائنات الكيان في عميل GWT حتى يتمكنوا من استخدامها على جانب العميل في RPC أيضًا.يجب أن يكون DAO على جانب الخادم ويمكن أن يحتوي على أي شيء تدعمه حاويتك.

المشكلة التي تواجهك الآن هي أنه عند التحويل البرمجي، قال مترجم GWT إنه لا يعرف ما هي تلك الواردات الخاصة بتعليقات JPA الموجودة في فئات DTO للكيان.ولهذا السبب تحتاج إلى فئة javax.persistence وأكواد المصدر.يعمل مرجع jpa-annotation-source.jar بواسطة Rustmyself.إنها مجرد ملفات فئة javax.persistence المترجمة وملفات أكواد المصدر بالإضافة إلى Persistence.gwt.xml.إنها وحدة GWT بسيطة لحزمة javax.persistence.إذا كنت تعرف كيفية إنشاء وحدة GWT الخاصة بك، فمن المفترض أن تواجه مشكلة في تنفيذ كل هذا العمل.بالمناسبة، يمكن العثور على المصدر الرسمي لـ Java EE في قسم الإنشاء بموقع مطور glassfish wiki.glassfish.java.net

هناك العديد من الحلول الأخرى التي تعمل على تحويل كيانات PU الفاخرة الخاصة بك إلى كائنات بسيطة تلقائيًا باستخدام الوكيل أو لتحميلها ببطء في وقت التشغيل.أنها تعمل، ولكن ليس الحلول الأمثل.أفضل الممارسات هي جعل الأمور بسيطة وقوية من البداية من خلال وجود كيانات POJO JPA DTO في سياق عميل GWT وDAO الكامل على الخادم.

مثال على استمرارية GWTP
لقد أضفت مثالاً عمليًا فعليًا حول كيفية جعل GWT وJPA يعملان بسلاسة.إنه مشروع NetBean مع أكواد المصدر وملف النشر.يرى GWTPersistence على NingZhang.info

وأنا أعمل أيضا مع النقابة <->. GWT تحويل البيانات الخ

في محاولة للقضاء على طبقة DTO كنت جلعاد أيضا.

واعتراضي هنا هو حول ترجمة javax.persistence. لتجنب هذه اعتدت الإعلانات رسم الخرائط JPA XML (orm.xml)

وببساطة، والحفاظ على نسخة أخرى من الكيانات الخاصة بك ولكن دون شروح!

وانتعاش على تعليق التآزر، وكنت الآن (من GWT 1.5) تحتاج فقط إلى إضافة

<source path='javax.persistence'/>

لModule.gwt.xml بك

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top