You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Sami Dalouche (JIRA)" <ji...@apache.org> on 2008/02/03 18:14:40 UTC

[jira] Created: (WW-2471) NPE in XWorkConverter.loadConversionProperties after adding DateConverter is still not fixed in 2.1.0

NPE in XWorkConverter.loadConversionProperties after adding DateConverter is still not fixed in 2.1.0
-----------------------------------------------------------------------------------------------------

                 Key: WW-2471
                 URL: https://issues.apache.org/struts/browse/WW-2471
             Project: Struts 2
          Issue Type: Bug
    Affects Versions: 2.1.0
            Reporter: Sami Dalouche


Same problem as : WW-1978, the problem is still not fixed in 2.1.0, nor in 2.1.1-SNAPSHOT

when xwork-conversion.properties contains an entry, Struts 2 startup throws a NPE :

[ERROR] [2008-02-03 17:09:16,181] [com.opensymphony.xwork2.conversion.impl.XWorkConverter] (main,) : Conversion registration error
java.lang.NullPointerException
        at com.opensymphony.xwork2.conversion.impl.XWorkConverter.createTypeConverter(XWorkConverter.java:729)
        at com.opensymphony.xwork2.conversion.impl.XWorkConverter.loadConversionProperties(XWorkConverter.java:756)
        at com.opensymphony.xwork2.conversion.impl.XWorkConverter.<init>(XWorkConverter.java:184)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:388)
        at com.opensymphony.xwork2.inject.ContainerBuilder$5.create(ContainerBuilder.java:211)
        at com.opensymphony.xwork2.inject.Scope$2$1.create(Scope.java:49)
        at com.opensymphony.xwork2.inject.ContainerImpl$ParameterInjector.inject(ContainerImpl.java:431)
        at com.opensymphony.xwork2.inject.ContainerImpl.getParameters(ContainerImpl.java:446)


So, it looks like the object factory is not set in XWorkConverter :
        Object obj = objectFactory.buildBean(className, null);

Is there a quick work-around ?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (WW-2471) NPE in XWorkConverter.loadConversionProperties after adding DateConverter is still not fixed in 2.1.0

Posted by "Sami Dalouche (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/struts/browse/WW-2471?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=43149#action_43149 ] 

Sami Dalouche commented on WW-2471:
-----------------------------------

The work-around I found was to move the converters to some other properties file (xwork-conversion-hack.properties, for instance), and to make sure the code is loaded before any action executes, by creating a filter such as :

public class Struts2HackFilter implements Filter {

    boolean initialized = false;
    
    public void destroy() {
	// TODO Auto-generated method stub
	
    }

    public void doFilter(ServletRequest request, ServletResponse response,
	    FilterChain filterChain) throws IOException, ServletException {
	if(!initialized) {
	    initXWorkConverter();
	    initialized = true;
	}
	    
	filterChain.doFilter(request, response);
	
    }

    
    
    public void initXWorkConverter() throws ServletException {
	try {
	    XWorkConverter xworkConverter = Dispatcher.getInstance().getContainer().getInstance(XWorkConverter.class);
	    xworkConverter.loadConversionProperties("xwork-conversion-hack.properties");    
	} catch(IOException e) {
	    throw new RuntimeException(e);
	}
    }

    public void init(FilterConfig arg0) throws ServletException {
	// TODO Auto-generated method stub
	
    }


and of course, it is necessary to map it in web.xml AFTER struts2 filter
<filter-mapping>
		<filter-name>struts2hack</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

This is the temporary solution I am using in the meanwhile....

> NPE in XWorkConverter.loadConversionProperties after adding DateConverter is still not fixed in 2.1.0
> -----------------------------------------------------------------------------------------------------
>
>                 Key: WW-2471
>                 URL: https://issues.apache.org/struts/browse/WW-2471
>             Project: Struts 2
>          Issue Type: Bug
>    Affects Versions: 2.1.0
>            Reporter: Sami Dalouche
>
> Same problem as : WW-1978, the problem is still not fixed in 2.1.0, nor in 2.1.1-SNAPSHOT
> when xwork-conversion.properties contains an entry, Struts 2 startup throws a NPE :
> [ERROR] [2008-02-03 17:09:16,181] [com.opensymphony.xwork2.conversion.impl.XWorkConverter] (main,) : Conversion registration error
> java.lang.NullPointerException
>         at com.opensymphony.xwork2.conversion.impl.XWorkConverter.createTypeConverter(XWorkConverter.java:729)
>         at com.opensymphony.xwork2.conversion.impl.XWorkConverter.loadConversionProperties(XWorkConverter.java:756)
>         at com.opensymphony.xwork2.conversion.impl.XWorkConverter.<init>(XWorkConverter.java:184)
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>         at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>         at com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:388)
>         at com.opensymphony.xwork2.inject.ContainerBuilder$5.create(ContainerBuilder.java:211)
>         at com.opensymphony.xwork2.inject.Scope$2$1.create(Scope.java:49)
>         at com.opensymphony.xwork2.inject.ContainerImpl$ParameterInjector.inject(ContainerImpl.java:431)
>         at com.opensymphony.xwork2.inject.ContainerImpl.getParameters(ContainerImpl.java:446)
> So, it looks like the object factory is not set in XWorkConverter :
>         Object obj = objectFactory.buildBean(className, null);
> Is there a quick work-around ?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (WW-2471) NPE in XWorkConverter.loadConversionProperties after adding DateConverter is still not fixed in 2.1.0

Posted by "Sami Dalouche (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/struts/browse/WW-2471?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=43306#action_43306 ] 

Sami Dalouche commented on WW-2471:
-----------------------------------

I just upgraded to the latest Struts 2.1.1-SNAPSHOT, - mvn -U ), and it didn't seem to solve this issue. when will the fix be visible ?

> NPE in XWorkConverter.loadConversionProperties after adding DateConverter is still not fixed in 2.1.0
> -----------------------------------------------------------------------------------------------------
>
>                 Key: WW-2471
>                 URL: https://issues.apache.org/struts/browse/WW-2471
>             Project: Struts 2
>          Issue Type: Bug
>    Affects Versions: 2.1.0
>            Reporter: Sami Dalouche
>            Assignee: Don Brown
>             Fix For: 2.1.1
>
>
> Same problem as : WW-1978, the problem is still not fixed in 2.1.0, nor in 2.1.1-SNAPSHOT
> when xwork-conversion.properties contains an entry, Struts 2 startup throws a NPE :
> [ERROR] [2008-02-03 17:09:16,181] [com.opensymphony.xwork2.conversion.impl.XWorkConverter] (main,) : Conversion registration error
> java.lang.NullPointerException
>         at com.opensymphony.xwork2.conversion.impl.XWorkConverter.createTypeConverter(XWorkConverter.java:729)
>         at com.opensymphony.xwork2.conversion.impl.XWorkConverter.loadConversionProperties(XWorkConverter.java:756)
>         at com.opensymphony.xwork2.conversion.impl.XWorkConverter.<init>(XWorkConverter.java:184)
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>         at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>         at com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:388)
>         at com.opensymphony.xwork2.inject.ContainerBuilder$5.create(ContainerBuilder.java:211)
>         at com.opensymphony.xwork2.inject.Scope$2$1.create(Scope.java:49)
>         at com.opensymphony.xwork2.inject.ContainerImpl$ParameterInjector.inject(ContainerImpl.java:431)
>         at com.opensymphony.xwork2.inject.ContainerImpl.getParameters(ContainerImpl.java:446)
> So, it looks like the object factory is not set in XWorkConverter :
>         Object obj = objectFactory.buildBean(className, null);
> Is there a quick work-around ?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (WW-2471) NPE in XWorkConverter.loadConversionProperties after adding DateConverter is still not fixed in 2.1.0

Posted by "Sanjeev Kumar (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/struts/browse/WW-2471?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=46477#action_46477 ] 

Sanjeev Kumar commented on WW-2471:
-----------------------------------

is there any fix available now?

> NPE in XWorkConverter.loadConversionProperties after adding DateConverter is still not fixed in 2.1.0
> -----------------------------------------------------------------------------------------------------
>
>                 Key: WW-2471
>                 URL: https://issues.apache.org/struts/browse/WW-2471
>             Project: Struts 2
>          Issue Type: Bug
>    Affects Versions: 2.1.0
>            Reporter: Sami Dalouche
>            Assignee: Don Brown
>             Fix For: 2.1.1
>
>
> Same problem as : WW-1978, the problem is still not fixed in 2.1.0, nor in 2.1.1-SNAPSHOT
> when xwork-conversion.properties contains an entry, Struts 2 startup throws a NPE :
> [ERROR] [2008-02-03 17:09:16,181] [com.opensymphony.xwork2.conversion.impl.XWorkConverter] (main,) : Conversion registration error
> java.lang.NullPointerException
>         at com.opensymphony.xwork2.conversion.impl.XWorkConverter.createTypeConverter(XWorkConverter.java:729)
>         at com.opensymphony.xwork2.conversion.impl.XWorkConverter.loadConversionProperties(XWorkConverter.java:756)
>         at com.opensymphony.xwork2.conversion.impl.XWorkConverter.<init>(XWorkConverter.java:184)
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>         at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>         at com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:388)
>         at com.opensymphony.xwork2.inject.ContainerBuilder$5.create(ContainerBuilder.java:211)
>         at com.opensymphony.xwork2.inject.Scope$2$1.create(Scope.java:49)
>         at com.opensymphony.xwork2.inject.ContainerImpl$ParameterInjector.inject(ContainerImpl.java:431)
>         at com.opensymphony.xwork2.inject.ContainerImpl.getParameters(ContainerImpl.java:446)
> So, it looks like the object factory is not set in XWorkConverter :
>         Object obj = objectFactory.buildBean(className, null);
> Is there a quick work-around ?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (WW-2471) NPE in XWorkConverter.loadConversionProperties after adding DateConverter is still not fixed in 2.1.0

Posted by "Don Brown (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/struts/browse/WW-2471?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Don Brown resolved WW-2471.
---------------------------

       Resolution: Fixed
    Fix Version/s: 2.1.1
         Assignee: Don Brown

Ah, yep, that's a pretty big bug.  Should be fixed now in XWork.

> NPE in XWorkConverter.loadConversionProperties after adding DateConverter is still not fixed in 2.1.0
> -----------------------------------------------------------------------------------------------------
>
>                 Key: WW-2471
>                 URL: https://issues.apache.org/struts/browse/WW-2471
>             Project: Struts 2
>          Issue Type: Bug
>    Affects Versions: 2.1.0
>            Reporter: Sami Dalouche
>            Assignee: Don Brown
>             Fix For: 2.1.1
>
>
> Same problem as : WW-1978, the problem is still not fixed in 2.1.0, nor in 2.1.1-SNAPSHOT
> when xwork-conversion.properties contains an entry, Struts 2 startup throws a NPE :
> [ERROR] [2008-02-03 17:09:16,181] [com.opensymphony.xwork2.conversion.impl.XWorkConverter] (main,) : Conversion registration error
> java.lang.NullPointerException
>         at com.opensymphony.xwork2.conversion.impl.XWorkConverter.createTypeConverter(XWorkConverter.java:729)
>         at com.opensymphony.xwork2.conversion.impl.XWorkConverter.loadConversionProperties(XWorkConverter.java:756)
>         at com.opensymphony.xwork2.conversion.impl.XWorkConverter.<init>(XWorkConverter.java:184)
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>         at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>         at com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:388)
>         at com.opensymphony.xwork2.inject.ContainerBuilder$5.create(ContainerBuilder.java:211)
>         at com.opensymphony.xwork2.inject.Scope$2$1.create(Scope.java:49)
>         at com.opensymphony.xwork2.inject.ContainerImpl$ParameterInjector.inject(ContainerImpl.java:431)
>         at com.opensymphony.xwork2.inject.ContainerImpl.getParameters(ContainerImpl.java:446)
> So, it looks like the object factory is not set in XWorkConverter :
>         Object obj = objectFactory.buildBean(className, null);
> Is there a quick work-around ?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.