Pohlad do tych JavaDocov hovori, ze addParameter v Struts 1.2.7 nema
ziadnu navratovu hodnotu, zatialco v 1.3.8 vracia ActionRedirect. A
nekompatibilita je na svete.
-ps
On 7/9/07, Ing. Jan Novotný <[EMAIL PROTECTED]> wrote:
Zdravím konferenci,
narazili jsme s kolegy na jeden zajímavý problém. Vše to začalo tímto
stack trace:
Servlet.service() for servlet action threw exception
java.lang.NoSuchMethodError:
org.apache.struts.action.ActionRedirect.addParameter(Ljava/lang/String;Ljava/lang/Object;)V
at
com.fg.webapp.cps.v1.frontend.cps.srv.APPLstoreCL.execute(APPLstoreCL.java:71)
at
org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
at
org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
at
org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
Jedná se o knihovnu CPS, která je kompilovaná v Java 1.4.X s knihovnou
Struts 1.2.8. Chyba se projeví pokud takto zkompilovanou knihovnu CPS
použiji v projektu kompilovaném s Javou 1.5 a přilinkovanou knihovnou Struts
1.3.8. Chyba se odstraní ve chvíli, kdy knihovnu CPS zkompiluji (stále s
compilerem 1.4) s verzí Struts 1.3.8. Nicméně, knihovny Struts 1.2.X a 1.3.X
by měly být v daném místě kompatibilní - viz. Javadoc:
http://struts.apache.org/1.2.7/api/org/apache/struts/action/ActionRedirect.html
http://struts.apache.org/1.3.8/apidocs/org/apache/struts/action/ActionRedirect.html
Tzn. naše knihovna CPS se dá beze změn zkompilovat jak se Struts 1.2.8,
tak i 1.3.8 - co je zarážející, že se stejným JDK kompilace knihovny CPS s
uvedenými verzemi vygeneruje binárně odlišný JAR.
Nějak si tedy nedokážeme vysvětlit v čem je problém - protože se nám
uvedená situace zdá naprosto ok, a měla by být pokrytá kontraktem zpětné
kompatibility. Nenapadá vás někoho, kde by mohl být zakopaný pes?
Ještě jedna možná zajímavá informace Struts 1.2.8 jsou kompilované s JDK
1.4, Struts 1.3.8 s JDK 1.5.
Díky za nápady,
Honza N.
--
--------------------------------------------------------------
Ing. Jan Novotný
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
http://blog.novoj.net
Myšlenky dne otce Fura
--------------------------------------------------------------