Re: JRebel and DirectAction error

From: Q (qdola..mail.com)
Date: Tue Feb 23 2010 - 19:56:43 EST

  • Next message: Ralph Scheuer: "Oh the joys of Eclipse..."

    Well, my guess is that wonder's request handler is looking to run Organizations.defaultAction() instead of DirectAction.organizationsAction() which is why that error occurs trying to load Organization.class as organizations.class. With the mac's case insensitive file system both organizations.class and Organizations.class refer to the same physical file. This is possibly an oversight in jrebel that the jvm doesn't make (assuming that the behaviour is different without jrebel), in which case you should file a bug report.

    Assuming that this is the expected behaviour of wonder's direct action handler, which you could certainly argue that it is, your only option right now will be to rename one of the two things (Organizations.class or DirectAction.organizationsAction()) so that they don't both share the same name, or move your project into a case sensitive disk image to avoid the name clash confusion.

    On 24/02/2010, at 10:38 AM, Pascal Robert wrote:

    > http://127.0.0.1/cgi-bin/WebObjects/WOCommunityPublic.woa/-6002/wa/organizations
    >
    >> And exactly what was the requested URL that you used that caused this error? (Wonder usually includes that along with a bunch of other debug when something like this happens).
    >>
    >> On 23/02/2010, at 9:01 PM, Pascal Robert wrote:
    >>
    >>>
    >>> Le 2010-02-20 à 23:05, Q a écrit :
    >>>
    >>>> Without the rest of the error message I'm not quite sure what your error is.
    >>>
    >>> I finally got a full stracktrace this morning :
    >>>
    >>> JRebel: Reloading class 'org.wocommunity.publicsite.DirectAction'.
    >>> JRebel: Resetting KeyValueCoding caches
    >>> JRebel: Resetting Action class cache
    >>> JRebel: Resetting NSValidation cache
    >>> fŽvr. 23 06:00:22 WOCommunityPublic[6002] (ERXNSLogLog4jBridge.java:43) WARN NSLog - <WOWorkerThread id=11 socket=null> Throwable occurred: java.lang.NoClassDefFoundError: org/wocommunity/publicsite/components/organizations (wrong name: org/wocommunity/publicsite/components/Organizations)
    >>> java.lang.LinkageError: loader (instance of sun/misc/Launcher$AppClassLoader): attempted duplicate class definition for name: "org/wocommunity/publicsite/components/organizations$$I"
    >>> at java.lang.ClassLoader.defineClass1(Native Method)
    >>> at java.lang.ClassLoader.defineClass(ClassLoader.java:698)
    >>> at java.lang.ClassLoader.defineClass(ClassLoader.java:544)
    >>> at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
    >>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    >>> at java.lang.reflect.Method.invoke(Method.java:597)
    >>> at com.zeroturnaround.javarebel.dw.defineRebelClass(JRebel:92)
    >>> at com.zeroturnaround.javarebel.gd.a(JRebel:247)
    >>> at com.zeroturnaround.javarebel.gd.processReloadableClass(JRebel:484)
    >>> at com.zeroturnaround.javarebel.SDKIntegrationImpl.runBytecodeProcessors(JRebel:240)
    >>> at com.zeroturnaround.javarebel.java4.RuntimeInstall.transform(JRebel:39)
    >>> at java.lang.ClassLoader.defineClass(ClassLoader.java)
    >>> at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
    >>> at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
    >>> at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
    >>> at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
    >>> at java.security.AccessController.doPrivileged(Native Method)
    >>> at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:315)
    >>> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:330)
    >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:250)
    >>> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:398)
    >>> at java.lang.Class.forName0(Native Method)
    >>> at java.lang.Class.forName(Class.java:169)
    >>> at com.webobjects.foundation._NSUtilities._searchForClassInPackages(_NSUtilities.java:417)
    >>> at com.webobjects.foundation._NSUtilities._classWithPartialName(_NSUtilities.java:375)
    >>> at com.webobjects.foundation._NSUtilities.classWithName(_NSUtilities.java:334)
    >>> at com.webobjects.appserver._private.WOBundle.lookForClassInAllBundles(WOBundle.java:92)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler._actionClassForName(WOActionRequestHandler.java:70)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler.getRequestActionClassAndNameForPath(WOActionRequestHandler.java:399)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler._handleRequest(WOActionRequestHandler.java:226)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler.handleRequest(WOActionRequestHandler.java:158)
    >>> at er.extensions.appserver.ERXDirectActionRequestHandler.handleRequest(ERXDirectActionRequestHandler.java:124)
    >>> at com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1687)
    >>> at er.extensions.appserver.ERXApplication.dispatchRequestImmediately(ERXApplication.java:1915)
    >>> at org.wocommunity.publicsite.Application.dispatchRequestImmediately(Application.java:50001)
    >>> at er.extensions.appserver.ERXApplication.dispatchRequest(ERXApplication.java:1880)
    >>> at org.wocommunity.publicsite.Application.dispatchRequest(Application.java:50001)
    >>> at com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:144)
    >>> at com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:226)
    >>> at java.lang.Thread.run(Thread.java:637)
    >>>
    >>> [2010-2-23 6:0:22 EST] <WorkerThread11> java.lang.NoClassDefFoundError: org/wocommunity/publicsite/components/organizations (wrong name: org/wocommunity/publicsite/components/Organizations)
    >>> at java.lang.ClassLoader.defineClass1(Native Method)
    >>> at java.lang.ClassLoader.defineClass(ClassLoader.java:698)
    >>> at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
    >>> at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
    >>> at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
    >>> at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
    >>> at java.security.AccessController.doPrivileged(Native Method)
    >>> at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:315)
    >>> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:330)
    >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:250)
    >>> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:398)
    >>> at java.lang.Class.forName0(Native Method)
    >>> at java.lang.Class.forName(Class.java:169)
    >>> at com.webobjects.foundation._NSUtilities._searchForClassInPackages(_NSUtilities.java:417)
    >>> at com.webobjects.foundation._NSUtilities._classWithPartialName(_NSUtilities.java:375)
    >>> at com.webobjects.foundation._NSUtilities.classWithName(_NSUtilities.java:334)
    >>> at com.webobjects.appserver._private.WOBundle.lookForClassInAllBundles(WOBundle.java:92)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler._actionClassForName(WOActionRequestHandler.java:70)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler.getRequestActionClassAndNameForPath(WOActionRequestHandler.java:399)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler._handleRequest(WOActionRequestHandler.java:226)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler.handleRequest(WOActionRequestHandler.java:158)
    >>> at er.extensions.appserver.ERXDirectActionRequestHandler.handleRequest(ERXDirectActionRequestHandler.java:124)
    >>> at com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1687)
    >>> at er.extensions.appserver.ERXApplication.dispatchRequestImmediately(ERXApplication.java:1915)
    >>> at org.wocommunity.publicsite.Application.dispatchRequestImmediately(Application.java:50001)
    >>> at er.extensions.appserver.ERXApplication.dispatchRequest(ERXApplication.java:1880)
    >>> at org.wocommunity.publicsite.Application.dispatchRequest(Application.java:50001)
    >>> at com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:144)
    >>> at com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:226)
    >>> at java.lang.Thread.run(Thread.java:637)
    >>>
    >>> fŽvr. 23 06:00:22 WOCommunityPublic[6002] (ERXNSLogLog4jBridge.java:43) WARN NSLog - <WOWorkerThread id=12 socket=null> Throwable occurred: java.lang.LinkageError: loader (instance of sun/misc/Launcher$AppClassLoader): attempted duplicate class definition for name: "org/wocommunity/publicsite/components/organizations$$I"
    >>> [2010-2-23 6:0:22 EST] <WorkerThread12> java.lang.LinkageError: loader (instance of sun/misc/Launcher$AppClassLoader): attempted duplicate class definition for name: "org/wocommunity/publicsite/components/organizations$$I"
    >>> at java.lang.ClassLoader.defineClass1(Native Method)
    >>> at java.lang.ClassLoader.defineClass(ClassLoader.java:698)
    >>> at java.lang.ClassLoader.defineClass(ClassLoader.java:544)
    >>> at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
    >>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    >>> at java.lang.reflect.Method.invoke(Method.java:597)
    >>> at com.zeroturnaround.javarebel.dw.defineRebelClass(JRebel:92)
    >>> at com.zeroturnaround.javarebel.gd.a(JRebel:247)
    >>> at com.zeroturnaround.javarebel.gd.processReloadableClass(JRebel:484)
    >>> at com.zeroturnaround.javarebel.SDKIntegrationImpl.runBytecodeProcessors(JRebel:240)
    >>> at com.zeroturnaround.javarebel.java4.RuntimeInstall.transform(JRebel:39)
    >>> at java.lang.ClassLoader.defineClass(ClassLoader.java)
    >>> at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
    >>> at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
    >>> at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
    >>> at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
    >>> at java.security.AccessController.doPrivileged(Native Method)
    >>> at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:315)
    >>> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:330)
    >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:250)
    >>> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:398)
    >>> at java.lang.Class.forName0(Native Method)
    >>> at java.lang.Class.forName(Class.java:169)
    >>> at com.webobjects.foundation._NSUtilities._searchForClassInPackages(_NSUtilities.java:417)
    >>> at com.webobjects.foundation._NSUtilities._classWithPartialName(_NSUtilities.java:375)
    >>> at com.webobjects.foundation._NSUtilities.classWithName(_NSUtilities.java:334)
    >>> at com.webobjects.appserver._private.WOBundle.lookForClassInAllBundles(WOBundle.java:92)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler._actionClassForName(WOActionRequestHandler.java:70)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler.getRequestActionClassAndNameForPath(WOActionRequestHandler.java:399)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler._handleRequest(WOActionRequestHandler.java:226)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler.handleRequest(WOActionRequestHandler.java:158)
    >>> at er.extensions.appserver.ERXDirectActionRequestHandler.handleRequest(ERXDirectActionRequestHandler.java:124)
    >>> at com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1687)
    >>> at er.extensions.appserver.ERXApplication.dispatchRequestImmediately(ERXApplication.java:1915)
    >>> at org.wocommunity.publicsite.Application.dispatchRequestImmediately(Application.java:50001)
    >>> at er.extensions.appserver.ERXApplication.dispatchRequest(ERXApplication.java:1880)
    >>> at org.wocommunity.publicsite.Application.dispatchRequest(Application.java:50001)
    >>> at com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:144)
    >>> at com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:226)
    >>> at java.lang.Thread.run(Thread.java:637)
    >>>
    >>> fŽvr. 23 06:00:22 WOCommunityPublic[6002] (ERXNSLogLog4jBridge.java:43) WARN NSLog - <WOWorkerThread id=11 socket=null> Workerthread exiting due to error, respawning with ID 10011...
    >>> fŽvr. 23 06:00:22 WOCommunityPublic[6002] (ERXNSLogLog4jBridge.java:43) WARN NSLog - <WOWorkerThread id=12 socket=null> Workerthread exiting due to error, respawning with ID 10012...
    >>> Exception in thread "WorkerThread12" com.webobjects.foundation.NSForwardException [java.lang.LinkageError] loader (instance of sun/misc/Launcher$AppClassLoader): attempted duplicate class definition for name: "org/wocommunity/publicsite/components/organizations$$I":java.lang.LinkageError: loader (instance of sun/misc/Launcher$AppClassLoader): attempted duplicate class definition for name: "org/wocommunity/publicsite/components/organizations$$I"
    >>> at com.webobjects.foundation.NSForwardException._runtimeExceptionForThrowable(NSForwardException.java:41)
    >>> at com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:238)
    >>> at java.lang.Thread.run(Thread.java:637)
    >>> Caused by: java.lang.LinkageError: loader (instance of sun/misc/Launcher$AppClassLoader): attempted duplicate class definition for name: "org/wocommunity/publicsite/components/organizations$$I"
    >>> at java.lang.ClassLoader.defineClass1(Native Method)
    >>> at java.lang.ClassLoader.defineClass(ClassLoader.java:698)
    >>> at java.lang.ClassLoader.defineClass(ClassLoader.java:544)
    >>> at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
    >>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    >>> at java.lang.reflect.Method.invoke(Method.java:597)
    >>> at com.zeroturnaround.javarebel.dw.defineRebelClass(JRebel:92)
    >>> at com.zeroturnaround.javarebel.gd.a(JRebel:247)
    >>> at com.zeroturnaround.javarebel.gd.processReloadableClass(JRebel:484)
    >>> at com.zeroturnaround.javarebel.SDKIntegrationImpl.runBytecodeProcessors(JRebel:240)
    >>> at com.zeroturnaround.javarebel.java4.RuntimeInstall.transform(JRebel:39)
    >>> at java.lang.ClassLoader.defineClass(ClassLoader.java)
    >>> at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
    >>> at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
    >>> at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
    >>> at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
    >>> at java.security.AccessController.doPrivileged(Native Method)
    >>> at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:315)
    >>> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:330)
    >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:250)
    >>> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:398)
    >>> at java.lang.Class.forName0(Native Method)
    >>> at java.lang.Class.forName(Class.java:169)
    >>> at com.webobjects.foundation._NSUtilities._searchForClassInPackages(_NSUtilities.java:417)
    >>> at com.webobjects.foundation._NSUtilities._classWithPartialName(_NSUtilities.java:375)
    >>> at com.webobjects.foundation._NSUtilities.classWithName(_NSUtilities.java:334)
    >>> at com.webobjects.appserver._private.WOBundle.lookForClassInAllBundles(WOBundle.java:92)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler._actionClassForName(WOActionRequestHandler.java:70)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler.getRequestActionClassAndNameForPath(WOActionRequestHandler.java:399)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler._handleRequest(WOActionRequestHandler.java:226)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler.handleRequest(WOActionRequestHandler.java:158)
    >>> at er.extensions.appserver.ERXDirectActionRequestHandler.handleRequest(ERXDirectActionRequestHandler.java:124)
    >>> at com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1687)
    >>> at er.extensions.appserver.ERXApplication.dispatchRequestImmediately(ERXApplication.java:1915)
    >>> at org.wocommunity.publicsite.Application.dispatchRequestImmediately(Application.java:50001)
    >>> at er.extensions.appserver.ERXApplication.dispatchRequest(ERXApplication.java:1880)
    >>> at org.wocommunity.publicsite.Application.dispatchRequest(Application.java:50001)
    >>> at com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:144)
    >>> at com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:226)
    >>> ... 1 more
    >>> Exception in thread "WorkerThread11" com.webobjects.foundation.NSForwardException [java.lang.NoClassDefFoundError] org/wocommunity/publicsite/components/organizations (wrong name: org/wocommunity/publicsite/components/Organizations):java.lang.NoClassDefFoundError: org/wocommunity/publicsite/components/organizations (wrong name: org/wocommunity/publicsite/components/Organizations)
    >>> at com.webobjects.foundation.NSForwardException._runtimeExceptionForThrowable(NSForwardException.java:41)
    >>> at com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:238)
    >>> at java.lang.Thread.run(Thread.java:637)
    >>> Caused by: java.lang.NoClassDefFoundError: org/wocommunity/publicsite/components/organizations (wrong name: org/wocommunity/publicsite/components/Organizations)
    >>> at java.lang.ClassLoader.defineClass1(Native Method)
    >>> at java.lang.ClassLoader.defineClass(ClassLoader.java:698)
    >>> at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
    >>> at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
    >>> at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
    >>> at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
    >>> at java.security.AccessController.doPrivileged(Native Method)
    >>> at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:315)
    >>> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:330)
    >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:250)
    >>> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:398)
    >>> at java.lang.Class.forName0(Native Method)
    >>> at java.lang.Class.forName(Class.java:169)
    >>> at com.webobjects.foundation._NSUtilities._searchForClassInPackages(_NSUtilities.java:417)
    >>> at com.webobjects.foundation._NSUtilities._classWithPartialName(_NSUtilities.java:375)
    >>> at com.webobjects.foundation._NSUtilities.classWithName(_NSUtilities.java:334)
    >>> at com.webobjects.appserver._private.WOBundle.lookForClassInAllBundles(WOBundle.java:92)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler._actionClassForName(WOActionRequestHandler.java:70)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler.getRequestActionClassAndNameForPath(WOActionRequestHandler.java:399)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler._handleRequest(WOActionRequestHandler.java:226)
    >>> at com.webobjects.appserver._private.WOActionRequestHandler.handleRequest(WOActionRequestHandler.java:158)
    >>> at er.extensions.appserver.ERXDirectActionRequestHandler.handleRequest(ERXDirectActionRequestHandler.java:124)
    >>> at com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1687)
    >>> at er.extensions.appserver.ERXApplication.dispatchRequestImmediately(ERXApplication.java:1915)
    >>> at org.wocommunity.publicsite.Application.dispatchRequestImmediately(Application.java:50001)
    >>> at er.extensions.appserver.ERXApplication.dispatchRequest(ERXApplication.java:1880)
    >>> at org.wocommunity.publicsite.Application.dispatchRequest(Application.java:50001)
    >>> at com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:144)
    >>> at com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:226)
    >>> ... 1 more
    >>>
    >>>
    >>>> But I have seen this exact error if I try to hit a direct action in a different class but get the capitalisation of the url wrong. eg., /wa/someClass/myaction where I should have used SomeClass.
    >>>>
    >>>> I think it's a side effect of the mac's case insensitive file system.
    >>>>
    >>>> On 20/02/2010, at 11:22 AM, Pascal Robert wrote:
    >>>>
    >>>>> I finally started using JRebel with WOLips today and it's great! Except for one thing :-/ When I edit the DirectAction class and a component, I get :
    >>>>>
    >>>>> JRebel: Reloading class 'org.wocommunity.publicsite.components.Organizations'.
    >>>>> JRebel: Resetting KeyValueCoding caches
    >>>>> JRebel: Resetting Component Definition cache
    >>>>> JRebel: Resetting NSValidation cache
    >>>>> JRebel: Reloading class 'org.wocommunity.publicsite.DirectAction'.
    >>>>> JRebel: Resetting KeyValueCoding caches
    >>>>> JRebel: Resetting Action class cache
    >>>>> JRebel: Resetting NSValidation cache
    >>>>> fevr. 19 20:18:14 WOCommunityPublic[6002] (ERXNSLogLog4jBridge.java:43) WARN NSLog - <WOWorkerThread id=8 socket=null> Throwable occurred: java.lang.NoClassDefFoundError: org/wocommunity/publicsite/components/organizations (wrong name: org/wocommunity/publicsite/components/Organizations)
    >>>>>
    >>>>> And the app hangs. Anyone having this problem too?
    >>>>
    >>>>
    >>>>
    >>>> --
    >>>> Seeya...Q
    >>>>
    >>>> Quinton Dolan - qdola..mail.com
    >>>> Gold Coast, QLD, Australia (GMT+10)
    >>>>
    >>>>
    >>>>
    >>>>
    >>>
    >>
    >>
    >>
    >> --
    >> Seeya...Q
    >>
    >> Quinton Dolan - qdola..mail.com
    >> Gold Coast, QLD, Australia (GMT+10)
    >>
    >>
    >>
    >>
    >

    -- 
    Seeya...Q
    

    Quinton Dolan - qdola..mail.com Gold Coast, QLD, Australia (GMT+10)



    This archive was generated by hypermail 2.0.0 : Tue Feb 23 2010 - 19:57:55 EST