You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by jogep <jo...@web.de> on 2008/01/03 13:40:22 UTC
Re: Result Annotations and parameters
I try both, but it has no affect.
Now i try it with an current 2.1.1 Snapshot, but the error still exists.
@Result(value = "result.action", type = ServletActionRedirectResult.class,
params={"bid","${bid}"})
DEBUG (org.apache.struts2.interceptor.FileUploadInterceptor:58) -
Überspringe //save
java.lang.NumberFormatException: For input string: ""
at
java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Long.parseLong(Long.java:424)
at java.lang.Long.parseLong(Long.java:461)
at
com.opensymphony.xwork2.conversion.impl.DefaultTypeConverter.longValue(DefaultTypeConverter.java:209)
at
com.opensymphony.xwork2.conversion.impl.DefaultTypeConverter.convertValue(DefaultTypeConverter.java:122)
at
com.opensymphony.xwork2.conversion.impl.DefaultTypeConverter.convertValue(DefaultTypeConverter.java:72)
at
com.opensymphony.xwork2.conversion.impl.XWorkBasicConverter.doConvertToNumber(XWorkBasicConverter.java:396)
at
com.opensymphony.xwork2.conversion.impl.XWorkBasicConverter.doConvertToNumber(XWorkBasicConverter.java:421)
at
com.opensymphony.xwork2.conversion.impl.XWorkBasicConverter.convertValue(XWorkBasicConverter.java:132)
at
com.opensymphony.xwork2.conversion.impl.XWorkConverter.convertValue(XWorkConverter.java:311)
at
com.opensymphony.xwork2.ognl.OgnlTypeConverterWrapper.convertValue(OgnlTypeConverterWrapper.java:28)
at ognl.OgnlRuntime.getConvertedType(OgnlRuntime.java:687)
at ognl.OgnlRuntime.getConvertedTypes(OgnlRuntime.java:703)
at ognl.OgnlRuntime.getConvertedMethodAndArgs(OgnlRuntime.java:726)
at ognl.OgnlRuntime.getAppropriateMethod(OgnlRuntime.java:783)
at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:794)
at ognl.OgnlRuntime.setMethodValue(OgnlRuntime.java:964)
at
ognl.ObjectPropertyAccessor.setPossibleProperty(ObjectPropertyAccessor.java:75)
at ognl.ObjectPropertyAccessor.setProperty(ObjectPropertyAccessor.java:131)
at
com.opensymphony.xwork2.ognl.accessor.ObjectAccessor.setProperty(ObjectAccessor.java:27)
at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:1656)
at
com.opensymphony.xwork2.ognl.accessor.CompoundRootAccessor.setProperty(CompoundRootAccessor.java:59)
at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:1656)
at ognl.ASTProperty.setValueBody(ASTProperty.java:101)
at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:177)
at ognl.SimpleNode.setValue(SimpleNode.java:246)
at ognl.Ognl.setValue(Ognl.java:476)
and some more
DEBUG
(org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor:58)
- Validating //save with method execute.
ERROR (com.opensymphony.xwork2.DefaultActionInvocation:28) - There was an
exception while instantiating the result of type
org.apache.struts2.dispatcher.ServletActionRedirectResult
Caught OgnlException while setting property 'bid' on type
'org.apache.struts2.dispatcher.ServletActionRedirectResult'. - Class:
ognl.ObjectPropertyAccessor
File: ObjectPropertyAccessor.java
Method: setProperty
Line: 132 - ognl/ObjectPropertyAccessor.java:132:-1
at
com.opensymphony.xwork2.ognl.OgnlUtil.internalSetProperty(OgnlUtil.java:400)
at com.opensymphony.xwork2.ognl.OgnlUtil.setProperties(OgnlUtil.java:87)
at
com.opensymphony.xwork2.ognl.OgnlReflectionProvider.setProperties(OgnlReflectionProvider.java:55)
at
com.opensymphony.xwork2.ObjectFactory.buildResult(ObjectFactory.java:222)
at
com.opensymphony.xwork2.DefaultActionInvocation.createResult(DefaultActionInvocation.java:201)
at
com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:349)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:259)
at
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:141)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:85)
at
com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)
at
com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)
at
com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)
at
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:248)
at
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:48)
Caused by: ognl.NoSuchPropertyException:
org.apache.struts2.dispatcher.ServletActionRedirectResult.bid
at ognl.ObjectPropertyAccessor.setProperty(ObjectPropertyAccessor.java:132)
at
com.opensymphony.xwork2.ognl.accessor.ObjectAccessor.setProperty(ObjectAccessor.java:27)
at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:1656)
at ognl.ASTProperty.setValueBody(ASTProperty.java:101)
at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:177)
at ognl.SimpleNode.setValue(SimpleNode.java:246)
at ognl.Ognl.setValue(Ognl.java:476)
at com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:197)
at
com.opensymphony.xwork2.ognl.OgnlUtil.internalSetProperty(OgnlUtil.java:393)
... 123 more
Ted Husted wrote:
>
> Is the property actually "ID", as in "String getID()" ?
>
> Or is it getId() ?
>
> In the JPA MailReader code (see the sandbox), @Results like this one
> are working:
>
> @Result(name = Index.SUCCESS, value = Index.INDEX, type
> =ServletActionRedirectResult.class, params = {Index.USER,
> Index.USER_USERNAME })
>
> where
>
> public static final String USER = "user";
> public static final String USER_USERNAME = "${user.username}";
>
> The end result is the that user parameter is appended to the query
> string for the redirect.
>
> -- HTH, Ted
> * <http://www.StrutsMentor.com/>
>
> On Dec 9, 2007 5:32 AM, Johannes Geppert <jo...@web.de> wrote:
>> Does no one have a resolution for my problem?
>> With XML-Configuration it works perfectly.
>> But I like the Configuration with Annotations.
>>
>> I try it with Struts 2.1.0 and the codebehind plugin.
>>
>> Thank You
>> Johannes
>>
>>
>> >
>> > Hello,
>> >
>> > i try to use the Result Annotations in my new Project, this works fine
>> for me.
>> > But when I try to use parameters I become an Exception.
>> >
>> > Config:
>> > @Namespace(value="/")
>> > @Results( {
>> > @Result(value = "myresult.action", type =
>> ServletActionRedirectResult.class, params={"ID","${ID}"}),
>> > @Result(value = "/pages/search.jsp", name="input")
>> > })
>> > public class Search extends BaseSupport
>> >
>> >
>> > In the log I found following messages:
>> > DEBUG (org.apache.struts2.config.ClasspathPackageProvider:58) -
>> ClasspathPackageProvider: Processing class de.geppert.actions.Search
>> > DEBUG (org.apache.struts2.config.ClasspathPackageProvider:58) - Adding
>> parmeter[ID:${ID}] to result.
>> >
>> > this looks fine but I when I use this Action It returned a
>> NullPointerException and following log messages:
>> >
>> > ERROR (com.opensymphony.xwork2.DefaultActionInvocation:28) - There was
>> an exception while instantiating the result of type
>> org.apache.struts2.dispatcher.ServletActionRedirectResult
>> > Caught OgnlException while setting property 'ID' on type
>> 'org.apache.struts2.dispatcher.ServletActionRedirectResult'. - Class:
>> ognl.ObjectPropertyAccessor
>> > File: ObjectPropertyAccessor.java
>> > Method: setProperty
>> > Line: 132 - ognl/ObjectPropertyAccessor.java:132:-1
>> > at
>> com.opensymphony.xwork2.ognl.OgnlUtil.internalSetProperty(OgnlUtil.java:400)
>> > at
>> com.opensymphony.xwork2.ognl.OgnlUtil.setProperties(OgnlUtil.java:87)
>> > at
>> com.opensymphony.xwork2.ognl.OgnlReflectionProvider.setProperties(OgnlReflectionProvider.java:55)
>> > at
>> com.opensymphony.xwork2.ObjectFactory.buildResult(ObjectFactory.java:222)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation.createResult(DefaultActionInvocation.java:201)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:349)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:259)
>> > at
>> com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:141)
>> > at
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:85)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)
>> > at
>> com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)
>> > at
>> com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:248)
>> > at
>> org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:48)
>> > at
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:85)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)
>> > at
>> com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)
>> > at
>> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:124)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)
>> > at
>> com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)
>> > at
>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:170)
>> > at
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:85)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)
>> > at
>> com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)
>> > at
>> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:104)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)
>> > at
>> com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)
>> > at
>> com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
>> >
>> > Can anybody resolve my problem? I think my configuration has no
>> errors, because my Actions without parameters work fine.
>> >
>> > Best Regards
>> > Johannes Geppert
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>
>
--
View this message in context: http://www.nabble.com/Result-Annotations-and-parameters-tp14189762p14596236.html
Sent from the Struts - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org