2009-05-11 11 views
3

Je ne sais pas si c'est moi ou si c'est un bug.Comment réparer une erreur de redirection OGNL, Impossible de régler param?

j'ai eu l'erreur suivante

11:52:01,623 ERROR ObjectFactory:27 - Unable to set parameter [dest] in result of type [org.apache.struts2.dispatcher.ServletRedirectResult] 
Caught OgnlException while setting property 'dest' on type 'org.apache.struts2.dispatcher.ServletRedirectResult'. - Class: ognl.ObjectPropertyAccessor 
File: ObjectPropertyAccessor.java 
Method: setProperty 
Line: 132 - ognl/ObjectPropertyAccessor.java:132:-1 
     at com.opensymphony.xwork2.ognl.OgnlUtil.internalSetProperty(OgnlUtil.java:392) 

Et ma config est assez minime

<package name="esupport" namespace="/esupport" extends="struts-default"> 
     <action name="old-esupport" class="com.my.MyRedirectAction"> 
      <result type="redirect"> 
      <param name="location">http://some.server.com/init.asp</param> 
      <param name="dest">${dest}</param> 
      </result> 
     </action> 
    </package> 

Et ma classe a une paire de méthode get/set. Et c'est tout. Nothing Fancy

J'ai trouvé this discussion dans le forum. Mais cela ne résout pas mon problème

J'utilise

Struts 2.1.16 Spring 2 Spring Security + CAS

(Le comportement drôle est-il me envoie au serveur CAS après l'erreur , mais je suppose qu'il sera corrigé après que le problème de redirection a été corrigé)

Répondre

3

cela ressemble à un bug avec Struts2. ils recommandent ... cacher l'erreur par:

<category name="com.opensymphony.xwork2.ObjectFactory"> 
    <priority value="fatal"/> 
</category> 

de .... TroubleShooting guide section on redirects

0

je faisais face à cette question après le déploiement de l'application dans le serveur 7 WAS. C'était une application existante et il n'y avait pas de changement de code.

les exceptions suivantes ont été trouvés dans le serveur journaux de démarrage

Failed to write out object: ext___405722372 
com.ibm.wkplc.extensionregistry.util.XmlUtilException: Unable to write to the given file 

Juste effacé le cache du serveur et redémarré et la question se est résolu.

Questions connexes