Thx for letting me know.

I ve posted to the correct group!

Sorry for this.

Τη Τετάρτη, 25 Ιουλίου 2012 4:04:30 μ.μ. UTC+3, ο χρήστης Lars Viklund 
έγραψε:
>
> I believe you've posted to the wrong list.
> This one is about everything around hosting projects on Google Code 
> hosting,
> not any particular APIs that Google might expose, or some arbitrary project
> you found on Google Code.
>
> Good luck in your endeavors.
>
> On Wed, Jul 25, 2012 at 10:52 AM, <[email protected]> wrote:
>
>> Hi guys.
>>
>> I am just starting to get a feel about Google Code and GWT.
>>
>> So my first thing to do was to download the Google Plugin for Eclipse and 
>> create a new Project.
>>
>> The project comes with an example, the greeting example. So i deployed 
>> that to App Engine and it worked great.
>>
>> Now I want to put some functionality in the example. So via eclipse, i 
>> d/led the Contacts API and automatically the jars were placed in the 
>> classpath and lib directory.
>>
>> So in the server side, in GreetingServiceImpl.java I added the following 
>> line
>>
>> ContactsService service = new ContactsServic("Contacts");
>>
>>
>>
>> So the file looks like this:
>>
>>
>> package com.gnt.server;
>>>
>>> import com.gnt.client.GreetingService;
>>> import com.gnt.shared.FieldVerifier;
>>> import com.google.gdata.client.contacts.ContactsService;
>>> import com.google.gwt.user.server.rpc.RemoteServiceServlet;
>>>
>>> /**
>>>  * The server side implementation of the RPC service.
>>>  */
>>> @SuppressWarnings("serial")
>>> public class GreetingServiceImpl extends RemoteServiceServlet implements
>>>         GreetingService {
>>>
>>>     public String greetServer(String input) throws 
>>> IllegalArgumentException {
>>>         // Verify that the input is valid. 
>>>         if (!FieldVerifier.isValidName(input)) {
>>>             // If the input is not valid, throw an 
>>> IllegalArgumentException back to
>>>             // the client.
>>>             throw new IllegalArgumentException(
>>>                     "Name must be at least 4 characters long");
>>>         }
>>>
>>>         String serverInfo = getServletContext().getServerInfo();
>>>         String userAgent = 
>>> getThreadLocalRequest().getHeader("User-Agent");
>>>         
>>>         // Escape data from the client to avoid cross-site script 
>>> vulnerabilities.
>>>         input = escapeHtml(input);
>>>         userAgent = escapeHtml(userAgent);
>>>         ContactsService contactsService = new 
>>> ContactsService("Contacts");
>>>         return "Hello, " + input + "!<br><br>I am running " + serverInfo
>>>                 + ".<br><br>It looks like you are using:<br>" + 
>>> userAgent;
>>>     }
>>>
>>>     /**
>>>      * Escape an html string. Escaping data received from the client 
>>> helps to
>>>      * prevent cross-site script vulnerabilities.
>>>      * 
>>>      * @param html the html string to escape
>>>      * @return the escaped string
>>>      */
>>>     private String escapeHtml(String html) {
>>>         if (html == null) {
>>>             return null;
>>>         }
>>>         return html.replaceAll("&", "&amp;").replaceAll("<", "&lt;")
>>>                 .replaceAll(">", "&gt;");
>>>     }
>>> }
>>>
>>>
>> Now,  the Remote Procedure Call fails and in the logs i only see 
>>
>> javax.servlet.ServletContext log: Exception while dispatching incoming RPC 
>> call
>>> com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public 
>>> abstract java.lang.String 
>>> com.gnt.client.GreetingService.greetServer(java.lang.String) throws 
>>> java.lang.IllegalArgumentException' threw an unexpected exception: 
>>> java.lang.NoClassDefFoundError: com/google/gdata/client/GoogleService
>>>     at 
>>> com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:385)
>>>     at 
>>> com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:588)
>>>     at 
>>> com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
>>>     at 
>>> com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
>>>     at 
>>> com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>>     at 
>>> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
>>>     at 
>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
>>>     at 
>>> com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:102)
>>>     at 
>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>     at 
>>> com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
>>>     at 
>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>     at 
>>> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>>>     at 
>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>     at 
>>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>>>     at 
>>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>>>     at 
>>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>>>     at 
>>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>>>     at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>>>     at 
>>> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:249)
>>>     at 
>>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>>     at org.mortbay.jetty.Server.handle(Server.java:326)
>>>     at 
>>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>>>     at 
>>> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
>>>     at 
>>> com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
>>>     at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>>>     at 
>>> com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:135)
>>>     at 
>>> com.google.apphosting.runtime.JavaRuntime$RequestRunnable.run(JavaRuntime.java:477)
>>>     at 
>>> com.google.tracing.TraceContext$TraceContextRunnable.runInContext(TraceContext.java:449)
>>>     at 
>>> com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:455)
>>>     at com.google.tracing.TraceContext.runInContext(TraceContext.java:695)
>>>     at 
>>> com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:333)
>>>     at 
>>> com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:325)
>>>     at 
>>> com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:453)
>>>     at 
>>> com.google.apphosting.runtime.ThreadGroupPool$PoolEntry.run(ThreadGroupPool.java:251)
>>>     at java.lang.Thread.run(Thread.java:679)
>>> Caused by: java.lang.NoClassDefFoundError: 
>>> com/google/gdata/client/GoogleService
>>>     at 
>>> com.google.appengine.runtime.Request.process-ff033622b2cd8d3f(Request.java)
>>>     at java.lang.ClassLoader.defineClass1(Native Method)
>>>     at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
>>>     at 
>>> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>>>     at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
>>>     at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
>>>     at 
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>     at java.lang.reflect.Method.invoke(Method.java:616)
>>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
>>>     at 
>>> com.gnt.server.GreetingServiceImpl.greetServer(GreetingServiceImpl.java:32)
>>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>     at 
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>>     at 
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>     at java.lang.reflect.Method.invoke(Method.java:43)
>>>     at 
>>> com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:569)
>>>     at 
>>> com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
>>>     at 
>>> com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
>>>     at 
>>> com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>>     at 
>>> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
>>>     at 
>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
>>>     at 
>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>     at 
>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>     at 
>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>     at 
>>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>>>     at 
>>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>>>     at 
>>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>>>     at 
>>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>>>     at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>>>     at 
>>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>>     at org.mortbay.jetty.Server.handle(Server.java:326)
>>>     at 
>>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>>>     at 
>>> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
>>>     at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>>>     at 
>>> com.google.tracing.TraceContext$TraceContextRunnable.runInContext(TraceContext.java:449)
>>>     at 
>>> com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:455)
>>>     at com.google.tracing.TraceContext.runInContext(TraceContext.java:695)
>>>     at 
>>> com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:333)
>>>     at 
>>> com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:325)
>>>     at 
>>> com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:453)
>>>     ... 1 more
>>> Caused by: java.lang.ClassNotFoundException: 
>>> com.google.gdata.client.GoogleService
>>>     at 
>>> com.google.appengine.runtime.Request.process-ff033622b2cd8d3f(Request.java)
>>>     ... 34 more
>>>
>>>
>>
>>
>> Can someone pls explain to me why this happens? All the necessary jars 
>> are in the classpath as well as in the lib directory...
>>
>> Why am i Getting this?
>>
>> Caused by: java.lang.NoClassDefFoundError: 
>> com/google/gdata/client/GoogleService
>>
>>
>>
>> Is there another way to get Contacts?
>>
>> Thank you and sorry for the big post!
>>  
>>
>>  -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Project Hosting on Google Code" group.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msg/google-code-hosting/-/dYXkMp4d364J.
>> To post to this group, send email to [email protected]
>> .
>> To unsubscribe from this group, send email to 
>> [email protected].
>> For more options, visit this group at 
>> http://groups.google.com/group/google-code-hosting?hl=en.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Project Hosting on Google Code" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-code-hosting/-/ly9bvAnXV8cJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-code-hosting?hl=en.

Reply via email to