[izpack-devel] Serialization problem

damo foodofgods2002 at yahoo.co.uk
Fri Jun 30 12:01:11 CEST 2006


I have been trying to add some new functionality to izpack so that it can use variable dependencies in a similar way the OS tag does.

eg.
<fileset dir="Database" targetdir="$INSTALL_PATH\">
   <installType type="something">  
      <include name="**\**\**\*"/>
   </installType>
</fileset>

the "something will be set in a panel that is near the start of the install"

it is supported for <file><fileset><singlefile><parseable><executable> 
based on the value of the variable a fileset (for instance) would be copied or not. 
I have implemented it fully and the ant task builds successfully but when i try to compile using compiler.jar i get an error 

the fileset where i use the tag <installType> is used in "Pack 2: Application Server" and that's where i get this error...

[ Begin ]

Copying  the  skeleton installer
Copying 22 files into installer
Merging 15 jars into installer
Writing 5 Packs into installer
Writing Pack 0: Core Files
Writing Pack 1: Database Data
Writing Pack 2: Application Server
Exception in thread "main" java.lang.NoClassDefFoundError: Lcom/izforge/izpack/installer/InstallData;
        at java.lang.Class.getDeclaredFields0(Native Method)
        at java.lang.Class.privateGetDeclaredFields(Class.java:1522)
        at java.lang.Class.getDeclaredField(Class.java:1214)
        at java.io.ObjectStreamClass.getDeclaredSUID(ObjectStreamClass.java:1474)
        at java.io.ObjectStreamClass.access$400(ObjectStreamClass.java:47)
        at   java.io.ObjectStreamClass$3.run(ObjectStreamClass.java:335)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:333)
        at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:253)
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1010)
        at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:278)
        at java.util.ArrayList.writeObject(ArrayList.java:529)
        at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
        at   sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:809)
        at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1296)
        at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1247)
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)
        at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1332)
        at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1304)
        at   java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1247)
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)
        at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:278)
        at com.izforge.izpack.compiler.Packager.writePacks(Packager.java:570)
        at com.izforge.izpack.compiler.Packager.createInstaller(Packager.java:190)
        at com.izforge.izpack.compiler.Compiler.createInstaller(Compiler.java:248)
        at com.izforge.izpack.compiler.CompilerConfig.executeCompiler(CompilerConfig.java:333)
        at com.izforge.izpack.compiler.CompilerConfig.main(CompilerConfig.java:1875)
        at   com.izforge.izpack.compiler.Compiler.main(Compiler.java:620)

[end...]

any help would be great as i would like to contribute to this project and hope that this can be implemented into izpack at some stage as it would be a very handy addition to the project.

NOTE: com/izforge/izpack/installer/InstallData.java does exist 

i have also assigned a new serialVersionUID but i think that there is a special way to work them out as the error refers to SUID

at java.io.ObjectStreamClass.getDeclaredSUID(ObjectStreamClass.java:1474)
at java.io.ObjectStreamClass.access$400(ObjectStreamClass.java:47)

this to me suggests that there is a security access problem because the serialVersionUID is invalid.

if anyone knows what i need to do or even if there are any serialVersionUID available to use i would be gratefull to hear them. 

Thanks Damien

Regards Damien.
 		
---------------------------------
 Inbox full of spam? Get leading spam protection and 1GB storage with All New Yahoo! Mail.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.berlios.de/pipermail/izpack-devel/attachments/20060630/2e79bbf8/attachment.html 


More information about the izpack-devel mailing list