[Soot-list] Soot changes method signature after de-compilation from jimple to java

Souvik Pal write2souvikpal at gmail.com
Tue Apr 29 06:43:00 EDT 2014


Hi all,

I am new to soot. I am using soot (soot 2.3) to analyze simple Hibernate
programs.

Hibernate *session.get* API requires a *java.lang.Class* and
*java.io.Serializable* type arguments. However when I am de-compiling the
Jimple expressions into java, the API signature changes and Hibernate can
not recognize it.

Example.

*User aUser = (User) session.get(User.class, 1);*
get transformed to in the de-compiled program.
*aUser = (User) session.get(class
"path/to/class/User", Integer.valueOf(1));*

The intermediate Jimple statements are


*$r1 = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(1)*
*$r2 = interfaceinvoke session.<org.hibernate.Session: java.lang.Object
get(java.lang.Class,java.io.Serializable)>(class "**path/to/class/User**",
$r1)*


Please let me know what should I do to keep the original signature of the
API.

Thanks and regards,

-- 
*Souvik Pal*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20140429/2741b9d9/attachment.html 


More information about the Soot-list mailing list