> -----Original Message-----
> From: Asleson, Ryan 
> Sent: Thursday, July 21, 2011 8:37
> To: user@struts.apache.org
> Subject: [struts-user] OGNL Problems During Struts2 Upgrade
> 
> 
> Hello,
> 
> We are attempting to upgrade our application from Struts2 
> version 2.0.11.2 to the current version, 2.2.3.  As part of 
> the upgrade, OGNL was upgraded from version 2.7.3 to version 3.0.1.

Not sure about the 2.0 upgrade path, will defer to someone else.

> 
> Our JSPs make use of OGNL to call static methods on classes 
> to help with formatting.  Here's an example:
> 
> <s:property 
> value="@com.example.DateUtils@toDate(promotion.startDate)" />
> 

Can you check you struts.properties for:

struts.ognl.allowStaticMethodAccess=true

> The DateUtils class has a static toDate method that takes in 
> the passed in promotion.startDate object (which is likely a 
> java.sql.Date) and converts it to a java.util.Date.  It does 
> that so that s:property can properly and uniformly format the 
> date for display.
> 
> This had worked before the upgrade from 2.0.11.2 to 2.2.3.  
> After the upgrade, it no longer works and the s:property tag 
> doesn't output anything.  I put some logging statements in 
> the toDate method and it looks like the toDate method is 
> never being called in the first place.
> 
> One thing to note is that the DateUtils has two overloaded 
> static toDate methods:  one that takes a String, and the 
> other that takes a Date (or one of its subclasses).  This 
> doesn't seem to make any difference as I've tried changing 
> the method name (and the corresponding OGNL expression) and 
> it still failed to work.
> 
> On this page:
> 
> http://struts.apache.org/2.2.3/docs/version-notes-211.html
> 
> I see this note in the "Backward compatibility issues with 
> previous versions" section:
> 
> OGNL method calls like "text(key)" now invoke "text(String)" 
> instead of "getText(String)". This affects method calls only, 
> not properties. Some OGNL expressions may need to be updated.
> 
> I'm wondering if this is what is affecting me?  If so, how do 
> I update the OGNL expression so that it works?  I've tried a 
> few things like adding #attr. or simply # to the front of 
> "promotion.startDate" but that didn't seem to work.

--
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-                                                               -
- Jason Pyeron                      PD Inc. http://www.pdinc.us -
- Principal Consultant              10 West 24th Street #100    -
- +1 (443) 269-1555 x333            Baltimore, Maryland 21218   -
-                                                               -
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
This message is copyright PD Inc, subject to license 20080407P00.

 


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org

Reply via email to