Hi Sebastin, Not exactly sure what the problem is. If you want to send me over the module you did, i can take a look at it, and send you back a patch of any changes needed to get it to run.
-Justin Sebastin Kolman wrote: > Its confusing and annoying and I don't really understand whats > happening. Like I mentioned earlier that the module installed > successfully. I went through the code (instead of just blindly running > the commands) to understand whats really happening. So the test checks > to see if "Hello World" is returned. It creates the build only if the > tests run successful. > > I did an /mvn install/ again and it installed successfully. Now this > folder was located outside of geoserver/src (I am running geoserver from > source code). > > So i created a copy of the folder inside of geoserver/src and I also > did an mvn eclipse:eclipse so that the module has the rest classpath. I > then did a /mvn install/ but it gave a build failure because the tests > failed. The surefire test report said it was getting "Geoserver > Configuration API" whereas it was expecting "Hello World". > > I went back to the original folder and did a mvn install and it > installed succesfully. So I deleted the copy, imported this original > folder to eclipse, did the /"mvn eclipse:eclipse/" and then did the > mvn install but the tests failed. :( > > I re-build the module from scratch and skipped the /mvn eclipse:eclipse/ > part (because I felt it was probably the cause of the error) But all I > get now is the test failure. I do not understand how it was installing > successfully earlier (I did not look at the surefire report then). It > obviously was getting "Hello World" in return...how is it that it was > working then and not now. > > On Mon, Aug 17, 2009 at 12:44 PM, Sebastin Kolman <[email protected] > <mailto:[email protected]>> wrote: > > hmm....so here is what happened. > > I tried to follow your first solution of modifying the class path of > the web module. But eclipse did not recognize the hello_rest module > because I had not set it as a java project. So I deleted the project > and started a new java project and followed the instructions again > provided at > > http://docs.geoserver.org/1.7.x/developer/programming-guide/rest-services/implementing.html > > There were some errors like: > / > / > > /The declared package "org.geoserver.hellorest" does not match > the expected package "src.main.java.org.geoserver.hellorest" > HelloResource.java > hello_rest/src/main/java/org/geoserver/hellorest line 1 > Java Problem > / > > > /The import org.geoserver cannot be resolved > HelloResource.java > hello_rest/src/main/java/org/geoserver/hellorest line 4 > Java Problem/ > > > /The import org.restlet cannot be resolved > HelloResource.java > hello_rest/src/main/java/org/geoserver/hellorest line 6 > Java Problem/ > > > But I did the mvn install and the build was successful. I added the > module to the web module's classpath and restarted the geoserver by > running the Start.java file under > web/src/test/java/org/vfny/geoserver/jetty/. But the http requests, > > > http://localhost:8080/geoserver/rest/hello_rest/hello.txt > http://localhost:8080/geoserver/rest/hello_rest > > still return the exception. > > > I also tried running a separate local geoserver. So I installed > geoserver 1.7.6 and then added the hello_rest-1.7.5-SNAPSHOT.jar > file in the WEB-INF/lib folder. I sensed it would not work becasue > the versions are different. When I sent the http requests it > returned no exceptions. All that the page returned was "Geoserver > Configuration API". I checked the log and it seems that the request > was successful: > > /0:0:0:0:0:0:0:1 - - [17/Aug/2009:14:49:20 +0000] "GET > /geoserver/rest/hello_rest/hello.txt HTTP/1.1" 200 138 > 0:0:0:0:0:0:0:1 - - [17/Aug/2009:15:01:38 +0000] "GET > /geoserver/rest/hello_rest HTTP/1.1" 200 138/ > > > Does this mean the module was integreated successfully? I thought > the request was supposed to return the test "Hello World" > > On Fri, Aug 14, 2009 at 12:00 PM, Justin Deoliveira > <[email protected] <mailto:[email protected]>> wrote: > > You have a few options for getting the extension running as part > of geoserver. > > The first is to manually modify the classpath of the web module, > and add the hello_rest module. (Right click on module in package > explorer, click Properties, go to Java Build Path -> Projects) > > The second is to set up a profile for the module, and run > eclipse:eclipse with the profile engaged, which will set up the > dependency from the web module. This is quite a bit more work, see: > > > http://docs.geoserver.org/1.7.x/en/developer/policies/community-modules.html#id3 > > (Just steps 1 - 3) > > The last would be if you have a local geoserver that you use you > can drop the file hello_rest/target/hello_rest-1.0-SNAPSHOT.jar > into the WEB-INF/lib directory of your geoserver installation, > and restart it. > > Hope that helps. > > -Justin > > Sebastin Kolman wrote: > > Hi Justin, > > I followed your instructions and the module installed just > fine. As I mentioned earlier I am running geoserver from the > source code through eclipse. I start geoserver by running > the Start.java file under web/src/test/java/org/vfny/ > geoserver/jetty/. > > After doing the mvn install will it work if i simple stop > and start the servert? Or do I need to do a mvn install on > the whole geoserver project again ? > > How do I test this module? I assume it is by going to this url: > > http://localhost:8080/geoserver/rest/hello_rest/hello.txt > http://localhost:8080/geoserver/rest/hello_rest > > > On Thu, Jun 25, 2009 at 4:25 AM, Justin Deoliveira > <[email protected] <mailto:[email protected]> > <mailto:[email protected] <mailto:[email protected]>>> > wrote: > > Hi Sebastin, > > Thanks for sending me over your code. I took at a look at > it and here is > what I found. > > First off, there was a problem with the documentation, it > was out of > date. > Apologies I should have seen that right away. The > createSupportedFormats() > method should return a list, rather than a map. I have > updated the > documentation here: > > > > http://docs.geoserver.org/1.7.x/developer/programming-guide/rest-services/implementing.html > > There were also a few other issues with teh code: > > * The sources and test files are not in the proper > location with > regard to > packaging. You need to move > src/main/java/HelloResource.java to > src/main/java/org/geoserver/hellorest/HelloResource.java. And > similarly for > the the HelloResourceTest.java file. > > * A few imports were missing from HelloResource: > > import org.geoserver.rest.format.StringFormat; > import org.restlet.data.MediaType; > > You also now will need: > > import java.util.ArrayList; > import java.util.List; > > Let me know if that works. After making those changes I > was able to > successfully run HelloResourceTest. > > -Justin > > On Wed, 24 Jun 2009 11:43:05 -0400, Sebastin Kolman > <[email protected] <mailto:[email protected]> > <mailto:[email protected] <mailto:[email protected]>>> > > wrote: > > Thanks Justin. Did you mean just the hello_rest > module? I have > attached > it > > with this mail. > > > > I am also just learning Java so yeah I could be doing > a simple thing > really > > wrong. > > > > On Tue, Jun 23, 2009 at 9:51 PM, Justin Deoliveira > > <[email protected] <mailto:[email protected]> > <mailto:[email protected] > <mailto:[email protected]>>>wrote: > > > > >> Hmmm... can you zip up your project and send it to me > in a private > email? > >> It looks like the classpath is somehow off, and it > would be nice > to look > >> at > >> the eclipse .classpath file, along with the sources. > >> > >> -Justin > >> > >> > >> sabman wrote: > >> > >>> Thanks Justin. > >>> > >>> Here is what I was doing wrong. I created the folders > src/main/java and > >>> src/test/java under rest/hello_rest. When I created > the class > files, > >>> eclipse > >>> was creating the files under the rest/src/java > folder instead of > >>> rest/hello_rest/src/java. > >>> > >>> So now I made sure that the HelloResource.java file > is located > under > the > >>> correct folder and there were no errors. (But I > could see that the > >>> StringFormat and MediaType objects were not being > recognized > correctly.) > >>> Also I moved the applicationContext.xml file from > the resources > >>> folder(as > >>> mentioned in the tutorial) to the src/main/java > folder (as you > >>> mentioned.). > >>> Also made sure the HelloResourceTest.java file is > under the correct > >>> folder. > >>> Now when I run mvn install under the root module I > get the > following > >>> compilation error: > >>> > >>> [INFO] Compiling 1 source file to > >>> > >>> > > > /home/sabman/Documents/Projects/geoserver/src/rest/hello_rest/target/classes > >>> [INFO] > >>> > > > ------------------------------------------------------------------------ > >>> [ERROR] BUILD FAILURE [INFO] > >>> > > > ------------------------------------------------------------------------ > >>> [INFO] Compilation failure > >>> > > > /home/sabman/Documents/Projects/geoserver/src/rest/hello_rest/src/main/java/HelloResource.java:[9,7] > >>> org.geoserver.hellorest.HelloResource is not > abstract and does not > >>> override > >>> abstract method > >>> > > > createSupportedFormats(org.restlet.data.Request,org.restlet.data.Response) > >>> in org.geoserver.rest.AbstractResource > >>> > > > /home/sabman/Documents/Projects/geoserver/src/rest/hello_rest/src/main/java/HelloResource.java:[12,38] > >>> > > > createSupportedFormats(org.restlet.data.Request,org.restlet.data.Response) > >>> in org.geoserver.hellorest.HelloResource cannot override > >>> > > > createSupportedFormats(org.restlet.data.Request,org.restlet.data.Response) > >>> in org.geoserver.rest.AbstractResource; attempting > to use > incompatible > >>> return type found : > >>> > > > java.util.Map<java.lang.String,org.geoserver.rest.format.DataFormat> > >>> required: > java.util.List<org.geoserver.rest.format.DataFormat> > >>> > > > /home/sabman/Documents/Projects/geoserver/src/rest/hello_rest/src/main/java/HelloResource.java:[14,7] > >>> cannot find symbol symbol : class HashMap location: > class > >>> org.geoserver.hellorest.HelloResource > >>> > > > /home/sabman/Documents/Projects/geoserver/src/rest/hello_rest/src/main/java/HelloResource.java:[14,29] > >>> cannot find symbol symbol : class HashMap location: > class > >>> org.geoserver.hellorest.HelloResource > >>> > > > /home/sabman/Documents/Projects/geoserver/src/rest/hello_rest/src/main/java/HelloResource.java:[15,31] > >>> cannot find symbol symbol : class StringFormat > location: class > >>> org.geoserver.hellorest.HelloResource > >>> > > > /home/sabman/Documents/Projects/geoserver/src/rest/hello_rest/src/main/java/HelloResource.java:[15,45] > >>> cannot find symbol symbol : variable MediaType > location: class > >>> org.geoserver.hellorest.HelloResource > >>> > > > /home/sabman/Documents/Projects/geoserver/src/rest/hello_rest/src/main/java/HelloResource.java:[11,4] > >>> method does not override or implement a method from > a supertype > >>> > >>> > >>> > >>> > >>> > >>> > >>> Justin Deoliveira wrote: > >>> > >>>> sabman wrote: > >>>> > >>>>> I did not copy the jar file in the WEB-INF/lib > folder. I did > that now > >>>>> but > >>>>> its > >>>>> still the same. > >>>>> > >>>> Did you restart geoserver after you did? > >>>> > >>>>> There is no information related to the exception > in the log file. > >>>>> There > >>>>> are > >>>>> some errors messages in eclipse which I am listing > below: > >>>>> > >>>> Yeah, there probably won't be an exception, just > nothing in > the log > >>>> file. > >>>> It could also be that your applicationContext.xml > file is in > the wrong > >>>> place. Is it under src/main/java in the root of > your plugin > source? > >>>> > >>>> Can you do a "jar tvf hello_rest.jar" to give us a > listing of the > >>>> files. > >>>> Thanks. > >>>> > >>>>> 1) In the HelloResource.java file, For this piece > of code: > >>>>> protected Map<String, DataFormat> > createSupportedFormats(Request > >>>>> request, > >>>>> Response response) { > >>>>> > >>>>> HashMap formats = new HashMap(); > >>>>> formats.put( "txt", new StringFormat( > MediaType.TEXT_PLAIN > >>>>> )); > >>>>> > >>>>> return formats; > >>>>> } > >>>>> > >>>>> These are the errors: > >>>>> @ Map<String, DataFormat> Multiple markers at this > line > >>>>> - The return type is incompatible with > >>>>> AbstractResource.createSupportedFormats(Request, > Response) > >>>>> - implements > >>>>> > org.geoserver.rest.AbstractResource.createSupportedFormats > >>>>> @HashMap Multiple markers at this line > >>>>> - HashMap cannot be resolved to a type > >>>>> - HashMap cannot be resolved to a type > >>>>> > >>>>> @StringFormat and @MediaType Multiple markers at > this line > >>>>> - StringFormat cannot be resolved > to a type > >>>>> - MediaType cannot be resolved > >>>>> > >>>> These are because the rest module is not on the > classpath of your > >>>> module. > >>>> Can you run a mvn eclipse:eclipse in the root of > your module > and then > >>>> refresh the project in eclipse. I think the tutorial is > lackign that > >>>> step. > >>>> > >>>>> 2) When i start geoserver from eclipse by running > the Start.java > file > >>>>> I > >>>>> see > >>>>> the following warning messages in the console: > >>>>> > >>>>> Jun 22, 2009 11:14:11 AM > >>>>> it.geosolutions.imageio.gdalframework.GDALUtilities > >>>>> loadGDAL > >>>>> WARNING: Native library load > failed.java.lang.UnsatisfiedLinkError: > no > >>>>> gdaljni in java.library.path > >>>>> .. > >>>>> .. > >>>>> log4j:WARN File option not set for appender > [geoserverlogfile]. > >>>>> log4j:WARN Are you using FileAppender instead of > ConsoleAppender? > >>>>> > >>>> That is normal, you can ignore that. > >>>> > >>>>> > >>>>> > >>>>> > >>>>> > >>>>> aaime wrote: > >>>>> > >>>>>> sabman ha scritto: > >>>>>> > I followed the instructions for the REST > services available > >>>>>> > >>>>>>> > >>>>>>> > > > http://docs.geoserver.org/1.7.x/developer/programming-guide/rest-services/implementing.html > >>>>>>> here . The only changes I had to make was in the > pom.xml > file where > >>>>>>> i > >>>>>>> changed the org.geoserver versions to > "1.7.5-SNAPSHOT" from > >>>>>>> "1.7.3-SNAPSHOT" > >>>>>>> (i compared it with the other pom.xml files). The > hello_rest module > >>>>>>> compiled > >>>>>>> successfully. I then tried testing the rest > service by > going to the > >>>>>>> URL: > >>>>>>> > >>>>>>> http://localhost:8080/geoserver/rest/hello.txt > >>>>>>> > http://localhost:8080/geoserver/rest/hello_rest/hello.txt > >>>>>>> http://localhost:8080/geoserver/rest/hello_rest > >>>>>>> > >>>>>>> I was not sure which one is correct so I tried > all in the > browser. > >>>>>>> And > >>>>>>> all I > >>>>>>> see is this: > >>>>>>> > >>>>>>> Geoserver Configuration API > >>>>>>> > >>>>>>> * exception > >>>>>>> > >>>>>>> What am I doing wrong here? > >>>>>>> > >>>>>> Did you actually include your jar/project in the > GeoServer > >>>>>> application > >>>>>> classpath? E.g, took the hello_rest jar and drop > it into > >>>>>> geoserver/WEB-INF/lib? > >>>>>> > >>>>>> Can you look in > $GEOSERVER_DATA_DIR/logs/geoserver.log and > see what > >>>>>> exception (with full strack trace) is thrown when > you try to > access > >>>>>> those > >>>>>> URL's? > >>>>>> > >>>>>> Cheers > >>>>>> Andrea > >>>>>> > >>>>>> > >>>>>> > >>>>>> > >>>>>> > > > ------------------------------------------------------------------------------ > >>>>>> Are you an open source citizen? Join us for the > Open Source > Bridge > >>>>>> conference! > >>>>>> Portland, OR, June 17-19. Two days of sessions, > one day of > >>>>>> unconference: > >>>>>> $250. > >>>>>> Need another reason to go? 24-hour hacker lounge. > Register > today! > >>>>>> > >>>>>> > > > http://ad.doubleclick.net/clk;215844324;13503038;v?http://opensourcebridge.org > >>>>>> _______________________________________________ > >>>>>> Geoserver-devel mailing list > >>>>>> [email protected] > <mailto:[email protected]> > <mailto:[email protected] > <mailto:[email protected]>> > > >>>>>> > https://lists.sourceforge.net/lists/listinfo/geoserver-devel > >>>>>> > >>>>>> > >>>>>> > >>>> -- > >>>> Justin Deoliveira > >>>> OpenGeo - http://opengeo.org > >>>> Enterprise support for open source geospatial. > >>>> > >>>> > >>>> > > > ------------------------------------------------------------------------------ > >>>> Are you an open source citizen? Join us for the > Open Source Bridge > >>>> conference! > >>>> Portland, OR, June 17-19. Two days of sessions, one > day of > >>>> unconference: > >>>> $250. > >>>> Need another reason to go? 24-hour hacker lounge. > Register today! > >>>> > >>>> > > > http://ad.doubleclick.net/clk;215844324;13503038;v?http://opensourcebridge.org > >>>> _______________________________________________ > >>>> Geoserver-devel mailing list > >>>> [email protected] > <mailto:[email protected]> > <mailto:[email protected] > <mailto:[email protected]>> > > >>>> > https://lists.sourceforge.net/lists/listinfo/geoserver-devel > >>>> > >>>> > >>>> > >>> > >> > >> -- > >> Justin Deoliveira > >> OpenGeo - http://opengeo.org > >> Enterprise support for open source geospatial. > >> > > -- > Justin Deoliveira > OpenGeo - http://opengeo.org > Enterprise support for open source geospatial. > > > > > -- > Regards, > Sebastin > > > > -- > Justin Deoliveira > OpenGeo - http://opengeo.org > Enterprise support for open source geospatial. > > > > > -- > Regards, > Sebastin > > > > > -- > Regards, > Sebastin -- Justin Deoliveira OpenGeo - http://opengeo.org Enterprise support for open source geospatial. ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Geoserver-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/geoserver-devel
