سؤال

حسنًا، لقد قضيت ثلاثة سبع ساعات من البحث والاختبار على Google واستسلمت، ولا بد لي من طلب المساعدة. كنت أقوم بالتطوير في Linux وكان كل شيء سهلاً، والآن أستخدم Windows والأشياء السهلة مثل تحديد اللغة الصحيحة لا تعمل.

لقد قمت بإنشاء JSP بسيط باستخدام النموذج:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<form action="save-user" method="post">
    Name: <input type="text" name="name"><br>
    Email: <input type="text" name="email"><br>
    <input type="submit" value="Save">
</form>

و السيرفلت:

    String name = request.getParameter("name");
    String email = request.getParameter("email");

أتلقى Leoš بدلاً من Leoš.أستخدم WildFly 8.0RC1، Windows 8 التشيكي، فايرفوكس.

ما حاولت بالفعل:

  1. request.setCharacterEncoding("UTF-8");قبل قراءة المعلمة الأولى
  2. قم بالتصفية باستخدام request.setCharacterEncoding("UTF-8");
  3. خاصية JVM -Dfile.encoding=UTF-8
  4. قم بإزالة برطمانات JEE القياسية من الحرب
  5. إصلاح التعبئة والتغليف الحرب
  6. تقسيم المشروع إلى وحدة WEB وEJB

عندما يتم نشر كيان JPA / DAO، يتم تشويه علامات التشكيل.إذا قمت بتعليق كيان من servlet وقمت بإزالة كيان JPA من الحرب (حاليًا قم بإزالة OAuthLoginEJB.jar من WEB-INF/lib)، فسأتلقى التشفير الصحيح.إذا قمت بإضافة EJB هذا مرة أخرى فإنه يفشل مرة أخرى.هل هو خطأ JBoss/WildFly؟

يمكنني تقديم مصادر كاملة: https://drive.google.com/file/d/0B-adlc5KThQDWTdYOEwxOUpTVEU/edit?usp=sharingإنه جاهز للتشغيل، ولا تحتاج حتى إلى كتابة أحرف تشيكية، حيث يتم تعبئتها مسبقًا.شكرًا لك

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

المحلول

ماركو من القائمة البرية في القائمة البريدية تديرني إلى هذا العيب: rel="nofollow"> https://issues.jboss.ORG / استعراض / CDI-411 وهذه الحل البديل: http://weld.cdi-pec.org/Documentation/#3

عندما قمت بتعديل Web.xml الخاص بي، بدأ العمل:

giveacodicetagpre.

نصائح أخرى

تحتاج إلى الاتصال request.setCharacterEncoding("UTF-8") قبل القراءة لأول مرة من طلب InputStream.يمكن قراءة المعلمات بواسطة عامل التصفية قبل تعيين التشفير في servlet الخاص بك.ربما يكون هناك بعض المرشحات OAuthLoginEJB.jar أو في تبعيات أخرى، الذي يقرأ المعلمات أولا؟عادةً ما تكون هذه بعض المعلمات لتصحيح الأخطاء ...باستخدام Servlet API 3.0، يمكن تسجيل السيرفلتس والمرشحات من خلال التعليقات التوضيحية، لذلك يمكن تسجيل بعض المرشحات على الرغم من أنها فارغة web.xml.

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