The issue turned out be silly and simpler to fix..
some how the GetResult method was not recognized as 'result" property as per
the artilce
http://www.javaworld.com/javaworld/jw-09-2008/jw-09-dsls-in-java-4.html?page=4.
I do not know what other step either the article or the script i wrote is
missig
dynaMate wrote:
>
> Thank you for your reply. It helped me to think and ask this question. The
> runtime exception i'm getting
> is perhaps due to the dependancy on the my own class ( which is in a jar
> file and specified in the classpath as posted) not compiled as part of
> groovyc -j compilation? I have developed a library purely using Java and
> my new Groovy script import those library classes. The library classes
> in-turn depend on Jaxb. My question is should the library be compiled as
> part of groovyc command? I guess not.
>
> Since Groovy script does not directly use anu JAXB dependant classes your
> slides or example didn't help much. I have uploaded complete source code
> in a zip which gives a good picture and it is fairly simple code...groovy
> script in question is less than 20 lines... the issue is in getResult and
> during the
> call ap.pay(request) which depend on JAXB.
>
>
>
>
> Paul King wrote:
>>
>>
>> Perhaps the JAXB slides (52-53) or Jersey slides (59-61) in this
>> presentation will help you:
>>
>> http://www.slideshare.net/paulk_asert/xml-and-web-services-with-groovy-presentation
>>
>> (The JAXB example has the 'build' dir in the classpath.
>> See the wsimport line. The Jersey one has all the Jersey jar files
>> in the classpath).
>>
>> Another (RESTful) Jersey example:
>>
>> /////////////////////////////////
>> package com.asert
>>
>> import javax.xml.bind.annotation.*
>> import javax.ws.rs.*
>> import com.sun.jersey.api.container.httpserver.HttpServerFactory
>> import
groovy.xml.MarkupBuilder>>
>> @XmlRootElement
>> @XmlAccessorType (XmlAccessType.FIELD)
>> final class Song {
>> @XmlElement String name
>> @XmlElement int duration
>> @XmlElement Artist artist
>> }
>> @XmlRootElement
>> @XmlAccessorType (XmlAccessType.FIELD)
>> final class Artist {
>> @XmlElement String name
>> }
>>
>> class SongList {
>> static song(sn, d, an) { new Song(name:sn, duration:d, artist:new
>> Artist(name:an)) }
>> static songs = [song("S1", 5, "A1"), song("S2", 8, "A2"), song("S3",
>> 13, "A3")]
>> }
>>
>> @Path ("/songs/{listId}")
>> class SongListResource {
>> @GET @Produces(["text/xml", "application/json", "application/atom"])
>> Song getList(@(protected)) {
>> SongList.songs[listId as int]
>> }
>> }
>> //<name>S2</name><duration>8</duration><artist><name>A2</name></artist>
>> @Path ("/songsxml/{listId}")
>> class SongXmlResource {
>> @GET @Produces("text/xml")
>> String getSong(@(protected)) {
>> def s = SongList.songs[listId as int]
>> def sw = new StringWriter()
>> new MarkupBuilder(sw).song{
>> name(s.name)
>> duration(s.duration)
>> artist{ name(s.artist.name) }
>> }
>> sw.toString()
>> }
>> }
>>
>> def baseUri = "http://localhost:9998/"
>>
>> println """
>> Starting HTTP server with Jersey...
>> App WADL available at ${baseUri}application.wadl
>> App available at ${baseUri}songs/listId
>> """
>> HttpServerFactory.create(baseUri).start()
>> /////////////////////////////////
>>
>>
>> Cheers, Paul.
>>
>> dynaMate wrote:
>>> Just want to clarify that, i'm not using GroovyWS library...I depend on
>>> JAXB
>>> library shipped wiht Java 1.6.
>>>
>>> My feeling is it is bug in Groovy...Only Groovy expert can help
>>> me...thanks..
>>>
>>>
>>> dynaMate wrote:
>>>> well, i get unable to resolve class XmlElement error or unable to
>>>> resolve
>>>> class XmlAccessorType when i use the annotations you suggested...what
>>>> is
>>>> the right value? I'm struck here...where can i lookup?
>>>>
>>>> thanks
>>>>
>>>>
>>>> SophosGuy wrote:
>>>>> Er @XmlElement or something like that
>>>>>
>>>>> On Sun, Feb 7, 2010 at 10:13 PM, Jackie Gleason
>>>>> <jackiegleason@(protected):
>>>>>
>>>>>> sorry look up
>>>>>>
>>>>>> @XmlAccessorType(XmlAccessType.NONE)
>>>>>>
>>>>>> There are three ways this can be set you need to set it to none and
>>>>>> then
>>>>>> make sure you have @ element on all of the properties (or
>>>>>> getters/setters)
>>>>>> you have then JAXB should work, if you set it to anything else weird
>>>>>> things
>>>>>> can happen
>>>>>>
>>>>>> Hope this helps.
>>>>>>
>>>>>> Jackie
>>>>>>
>>>>>> On Sun, Feb 7, 2010 at 7:18 PM, dynaMate <pudur@(protected):
>>>>>>
>>>>>>> Thanks for prompt reply
>>>>>>> Well, i have imported all the classes i need or use directly in my
>>>>>>> groovy
>>>>>>> script in the groovy script. I do not know transtive dependant
>>>>>>> classes.
>>>>>>> The
>>>>>>> thing is it(groovyscript) has NOT complained on the statements
>>>>>>> involving
>>>>>>> direct java classes i have implemented or i've explicitly
>>>>>>> imported..
>>>>>>> I'm a newbie..i'm not sure how to use @elements? can you give an
>>>>>>> example..
>>>>>>>
>>>>>>>
>>>>>>> SophosGuy wrote:
>>>>>>>> Have you declared your classes manually? The default doesn't work
>>>>>>>> so
>>>>>>> you
>>>>>>>> have to manually specify @elements
>>>>>>>>
>>>>>>>> Jackie
>>>>>>>>
>>>>>>>> On Sun, Feb 7, 2010 at 6:43 PM, dynaMate <pudur@(protected):
>>>>>>>>
>>>>>>>>> My environment is: Java 1.6 and Groovy 1.7.0, Jaxb library shipped
>>>>>>> with
>>>>>>>>> Java
>>>>>>>>> 1.6, no other 3rd party libarary.
>>>>>>>>> the command i use to compile and run are:
>>>>>>>>> groovyc -j UseDSL.java PayDSL.groovy -Jsource 1.6
>>>>>>>>> java -classpath
>>>>>>>>>
>>>>>>>>>
>>>>>>> %GROOVY_HOME%\embeddable\groovy-all-1.7.0.jar;paypal_platform_base.jar;paypal_platform_stubs.jar;.
>>>>>>>>> UseDSL
>>>>>>>>>
>>>>>>>>> I am getting the following exception and my guess is it is not
>>>>>>>>> able
>>>>>>> to
>>>>>>>>> find
>>>>>>>>> JAXB library or some class. Unfortunately the exception does not
>>>>>>> tell
>>>>>>> me
>>>>>>>>> which class it is not able to find in CP. How can i debug further
>>>>>>> and
>>>>>>>>> make
>>>>>>>>> the missing JDK/JAXB classes in the classpath? Is it necessary? Or
>>>>>>> what
>>>>>>>>> is
>>>>>>>>> the right thing to do? I have uploaded the entire source in a zip
>>>>>>> file.
>>>>>>>>> INFO: The requests and reponses from PayPal webservices will be
>>>>>>> logged
>>>>>>> to
>>>>>>>>> the file: paypal_sdk.log
>>>>>>>>> Exception in thread "main"
groovy.lang.MissingPropertyException:
>>>>>>>>> No
>>>>>>> such
>>>>>>>>> property: result for class: Script1
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap (
ScriptBytecodeAdapter.java:49)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>
org.codehaus.groovy.runtime.callsite.PogoGetPropertySite.getProperty (
PogoGetPropertySite.java:49)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGroovyObjectGetProperty (
AbstractCallSite.java:241)
>>>>>>>>> at Script1$_run_closure1.doCall(Script1.groovy:4)
>>>>>>>>> at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>>>>>>> Method)
>>>>>>>>> at
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown
>>>>>>> Source)
>>>>>>>>> at
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
>>>>>>> Source)
>>>>>>>>> at
java.lang.reflect.Method.invoke(Unknown Source)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>
org.codehaus.groovy.reflection.CachedMethod.invoke (
CachedMethod.java:88)
>>>>>>>>> at
>>>>>>>>>
groovy.lang.MetaMethod.doMethodInvoke (
MetaMethod.java:233)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>
org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod (
ClosureMetaClass.java:272)
>>>>>>>>> at
>>>>>>>
groovy.lang.MetaClassImpl.invokeMethod (
MetaClassImpl.java:886)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>
org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call (
PogoMetaClassSite.java:39)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall (
CallSiteArray.java:40)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call (
AbstractCallSite.java:117)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call (
AbstractCallSite.java:121)
>>>>>>>>> at PayDSL.process(PayDSL.groovy:121)
>>>>>>>>> at UseDSL.main(UseDSL.java:9)
>>>>>>>>>
>>>>>>>>> This is a time critical project, I appreciate your help greatly..
>>>>>>>>> -Regards http://old.nabble.com/file/p27493620/labrats.zip
>>>>>>> labrats.zip
>>>>>>>>> --
>>>>>>>>> View this message in context:
>>>>>>>>>
>>>>>>> http://old.nabble.com/MissingProperty-Exception-due-to-JAXB--tp27493620p27493620.html
>>>>>>>>> Sent from the groovy - user mailing list archive at Nabble.com.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>>>> To unsubscribe from this list, please visit:
>>>>>>>>>
>>>>>>>>> http://xircles.codehaus.org/manage_email
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>> --
>>>>>>> View this message in context:
>>>>>>> http://old.nabble.com/MissingProperty-Exception-due-to-JAXB--tp27493620p27493833.html
>>>>>>> Sent from the groovy - user mailing list archive at Nabble.com.
>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe from this list, please visit:
>>>>>>>
>>>>>>> http://xircles.codehaus.org/manage_email
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>
>>>>
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe from this list, please visit:
>>
>> http://xircles.codehaus.org/manage_email
>>
>>
>>
>>
>
>
--
Sent from the groovy - user mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email