1 2 Previous Next 15 Replies Latest reply on Aug 15, 2007 7:36 AM by tony.herstell1

    jboss-el doesn't include javax.el.LocalStrings?

    matt.drees

      Sometimes I get a stracktrace looking like this:

      javax.el.ELException: java.util.MissingResourceException: Can't find bundle for base name javax.el.LocalStrings, locale en_US
       at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:329)
       at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:338)
       at org.jboss.el.parser.AstPropertySuffix.invoke(AstPropertySuffix.java:58)
       at org.jboss.el.parser.AstValue.invoke(AstValue.java:96)
       at org.jboss.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
       at org.jboss.seam.mock.BaseSeamTest$Request.invokeMethod(BaseSeamTest.java:452)
       at org.jboss.seam.mock.BaseSeamTest$Request.invokeAction(BaseSeamTest.java:463)
       at org.uscm.crs.registration.FamilyRegistrationTest$4.invokeApplication(FamilyRegistrationTest.java:98)
       at org.jboss.seam.mock.BaseSeamTest$Request.invokeApplicationPhase(BaseSeamTest.java:600)
       at org.jboss.seam.mock.BaseSeamTest$Request.emulateJsfLifecycle(BaseSeamTest.java:552)
       at org.jboss.seam.mock.BaseSeamTest$Request.run(BaseSeamTest.java:483)
       at org.uscm.crs.registration.FamilyRegistrationTest.createFamilyRegistration(FamilyRegistrationTest.java:101)
       at org.uscm.crs.registration.FamilyRegistrationTest.singleRegistration(FamilyRegistrationTest.java:56)
      Caused by: java.util.MissingResourceException: Can't find bundle for base name javax.el.LocalStrings, locale en_US
       at java.util.ResourceBundle.throwMissingResourceException(Unknown Source)
       at java.util.ResourceBundle.getBundleImpl(Unknown Source)
       at java.util.ResourceBundle.getBundle(Unknown Source)
       at javax.el.ELResolver.message(ELResolver.java:40)
       at javax.el.BeanELResolver.getValue(BeanELResolver.java:72)
       at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
       at org.jboss.el.parser.AstPropertySuffix.getValue(AstPropertySuffix.java:53)
       at org.jboss.el.parser.AstValue.getValue(AstValue.java:67)
       at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
       at org.jboss.seam.core.Expressions$1.getValue(Expressions.java:102)
       at org.jboss.seam.Component.getValueToInject(Component.java:2016)
       at org.jboss.seam.Component.injectAttributes(Component.java:1497)
       at org.jboss.seam.Component.inject(Component.java:1321)
       at org.jboss.seam.interceptors.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:44)
       at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
       at org.jboss.seam.interceptors.ManagedEntityIdentityInterceptor.aroundInvoke(ManagedEntityIdentityInterceptor.java:42)
       at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
       at org.jboss.seam.interceptors.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:30)
       at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
       at org.jboss.seam.interceptors.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:27)
       at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
       at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103)
       at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:151)
       at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:87)
       at org.uscm.crs.registration.SpouseManager_$$_javassist_70.rejectRecords(SpouseManager_$$_javassist_70.java)
       at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:325)
       ... 33 more
      ... Removed 25 stack frames
      


      It masks the real exception, which is slightly frustrating; I have to set a breakpoint to find out what really went wrong.

      I downloaded Tomcat 6 and put javax/el/LocalStrings.properties in my classpath, and that worked. Perhaps this file should be put in Seam, or better yet in Jboss-el.

        • 1. Re: jboss-el doesn't include javax.el.LocalStrings?
          gavin.king

          I've seen it too. Please create an issue in JIRA.

          • 2. Re: jboss-el doesn't include javax.el.LocalStrings?
            matt.drees
            • 3. Re: jboss-el doesn't include javax.el.LocalStrings?
              dmitriy.lapko

              Does this task was solved? In JIRA it looks like affecting only 1.3.0.ALPHA and not closed, but I experienced this problem in 2.0.0BETA1 CVS version also.

              So, do you think I can add a new JIRA issue for 2.0.0BETA1 or it is somehow solved?

              • 4. Re: jboss-el doesn't include javax.el.LocalStrings?
                pmuir

                I've picked it up and fixed it. Thanks for the bump.

                • 5. Re: jboss-el doesn't include javax.el.LocalStrings?
                  matt.drees

                  Thanks Pete.

                  • 6. Re: jboss-el doesn't include javax.el.LocalStrings?
                    tony.herstell1

                     

                    "pete.muir@jboss.org" wrote:
                    I've picked it up and fixed it. Thanks for the bump.


                    What was the fix for this...

                    I am getting the same but being in the NZ locale its looking for a local version of my properties...

                    14:39:54,375 WARN [lifecycle] Can't find bundle for base name nz.co.selwynequestriancentre.i18n.jsfstandarderrors, locale en_NZ
                    java.util.MissingResourceException: Can't find bundle for base name nz.co.selwynequestriancentre.i18n.jsfstandarderrors, locale en_NZ
                     at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1508)
                    


                    Surly it should default the the file I do have in there?

                    jsfstandarderrors.properties

                    javax.faces.component.UIInput.CONVERSION error
                    javax.faces.component.UIInput.CONVERSION_detail = invalid
                    javax.faces.component.UIInput.REQUIRED required
                    javax.faces.convert.DateTimeConverter.CONVERSION = must be a valid date
                    #javax.faces.convert.DateTimeConverter.CONVERSION_detail = value must be a datetime
                    
                    #javax.faces.component.UISelectOne.INVALID Value is not a a valid option
                    #javax.faces.component.UISelectMany.INVALID Value is not a valid option
                    #javax.faces.validator.NOT_IN_RANGE Specified attribute is not between the expected values of {0} and {1}
                    #javax.faces.validator.DoubleRangeValidator.MAXIMUM Value is greater than allowable maximum of '{0}'
                    #javax.faces.validator.DoubleRangeValidator.MINIMUM Value is less than allowable minimum of '{0}'
                    #javax.faces.validator.DoubleRangeValidator.TYPE Value is not of the correct type
                    #javax.faces.validator.LengthValidator.MAXIMUM Value is greater than allowable maximum of '{0}'
                    #javax.faces.validator.LengthValidator.MINIMUM Value is less than allowable minimum of '{0}'
                    #javax.faces.validator.LongRangeValidator.MAXIMUM Value is greater than allowable maximum of '{0}'
                    #javax.faces.validator.LongRangeValidator.MINIMUM Value is less than allowable minimum of '{0}'
                    #javax.faces.validator.LongRangeValidator.TYPE Value is not of the correct type
                    
                    #javax.faces.convert.DateTimeConverter.CONVERSION = Conversion Error
                    #javax.faces.convert.DateTimeConverter.CONVERSION_detail = "{1}": xxSpecified value is not a valid date/time.
                    #javax.faces.converter.DateTimeConverter.DATE=value must be a date
                    #javax.faces.converter.DateTimeConverter.DATE_detail=value must be a date, eg. {1}
                    #javax.faces.converter.DateTimeConverter.TIME=value must be a time
                    #javax.faces.converter.DateTimeConverter.TIME_detail=value must be a time, eg. {1}
                    #javax.faces.converter.DateTimeConverter.DATETIME=value must be a date and time
                    #javax.faces.converter.DateTimeConverter.DATETIME_detail=value must be a date and time, eg. {1}
                    #javax.faces.converter.DateTimeConverter.PATTERN_TYPE=a pattern or type attribute must be specified to convert the value
                    #JSF 1.1:
                    #javax.faces.convert.BigDecimalConverter.CONVERSION = value must be a number
                    #javax.faces.convert.BigDecimalConverter.CONVERSION_detail = value must be a number
                    #javax.faces.convert.BigIntegerConverter.CONVERSION = value must be an integre
                    #javax.faces.convert.BigIntegerConverter.CONVERSION_detail = value must be a number
                    #javax.faces.convert.BooleanConverter.CONVERSION = value must be true or false
                    #javax.faces.convert.BooleanConverter.CONVERSION_detail = value must be true or false
                    #javax.faces.convert.ByteConverter.CONVERSION = value must be a byte
                    #javax.faces.convert.ByteConverter.CONVERSION_detail = value must be a byte
                    #javax.faces.convert.CharacterConverter.CONVERSION = value must be a character
                    #javax.faces.convert.CharacterConverter.CONVERSION_detail = value must be a character
                    #javax.faces.convert.DoubleConverter.CONVERSION = value must be a number
                    #javax.faces.convert.DoubleConverter.CONVERSION_detail = value must be a number
                    javax.faces.convert.FloatConverter.CONVERSION = value must be a number
                    javax.faces.convert.FloatConverter.CONVERSION_detail = value must be a number
                    #javax.faces.convert.IntegerConverter.CONVERSION = value must be an integer
                    #javax.faces.convert.IntegerConverter.CONVERSION_detail = value must be an integer
                    #javax.faces.convert.LongConverter.CONVERSION = value must be an integer
                    #javax.faces.convert.LongConverter.CONVERSION_detail = value must be a long integer
                    javax.faces.convert.NumberConverter.CONVERSION = value must be a number
                    javax.faces.convert.NumberConverter.CONVERSION_detail = value must be a number
                    #javax.faces.convert.ShortConverter.CONVERSION = value must be an integer
                    #javax.faces.convert.ShortConverter.CONVERSION_detail = value must be a short integer
                    


                    • 7. Re: jboss-el doesn't include javax.el.LocalStrings?
                      tony.herstell1
                      • 8. Re: jboss-el doesn't include javax.el.LocalStrings?
                        tony.herstell1
                        • 9. Re: jboss-el doesn't include javax.el.LocalStrings?
                          tony.herstell1

                          It actually throws a lot of these when the server runs up (am hooking into MissingResourceException!).
                          I get it to fire by not entering anything into a text field and presumably forcing a "required" validation message to be generated.

                          • 10. Re: jboss-el doesn't include javax.el.LocalStrings?
                            tony.herstell1

                            workround (barely) is to remove my refernce to my jsfstandarderrors in faces-config.xml and then I gut really nice messages like:

                            j_id15:login_username: Validation Error: Value is required.

                            • 11. Re: jboss-el doesn't include javax.el.LocalStrings?
                              pmuir

                              You need your .properties file on the classpath in the correct place e.g.

                              /WEB-INF/classes/nz/co/selwynequestriancentre/i18n/jsf/standarderrors.properties


                              If you are using Seam2, Seam will automatically use the Seam message bundle as the JSF message bundle.

                              • 12. Re: jboss-el doesn't include javax.el.LocalStrings?
                                tony.herstell1

                                 

                                "pete.muir@jboss.org" wrote:
                                You need your .properties file on the classpath in the correct place e.g.
                                /WEB-INF/classes/nz/co/selwynequestriancentre/i18n/jsf/standarderrors.properties


                                If you are using Seam2, Seam will automatically use the Seam message bundle as the JSF message bundle.


                                Please confirm you mean /jsf/standarderrors.properties
                                and not /jsfstandarderrors.properties

                                This used to work before Seam 2.0Beta1

                                • 13. Re: jboss-el doesn't include javax.el.LocalStrings?
                                  tony.herstell1

                                  Ok, I found a bug in MyEclipse exploded deployment (again)...

                                  MyEclipse is exporting a different part of a project by mistake!

                                  http://gaming.homeip.net (assuming its up!)

                                  weired!

                                  Reporting this to MyEclipse guys again...

                                  • 14. Re: jboss-el doesn't include javax.el.LocalStrings?
                                    pmuir

                                    Oops, typo

                                    /WEB-INF/classes/nz/co/selwynequestriancentre/i18n/jsfstandarderrors.properties


                                    Sorry.

                                    1 2 Previous Next