I´m not familiar with the S3 API, but every time I´ve seen
UnsatisfiedLinkError
the problem has been

A) A client side only function was called from the server side
B) A server side only function was called from the client side

So make sure there are no S3-functions that can not actually be used
on the server side


--Dalla
http://date-time.appspot.com/

On 13 Juli, 11:12, jlc488 <[email protected]> wrote:
> Hi,
>
> I am a newbie here. Please understand if my question is stupid.
>
> Ok, I am thingking about implementing simple test code like GWT + S3.
>
> I use GWT 1.6.4 and to work with S3, I use gwt-s3 library version
> 0.9.2.
>
> And somehow I am getting exception which I found hard to debug.
>
> Can anyone please share opinions or guide some ideas?
>
> Exception Messages below:
>
> The server is running athttp://localhost:8080/
> 2009. 7. 13 오전 8:59:02
> com.google.appengine.tools.development.ApiProxyLocalImpl log
> SEVERE: [1247475542828000] javax.servlet.ServletContext log: Exception
> while dispatching incoming RPC call
> com.google.gwt.user.server.rpc.UnexpectedException: Service method
> 'public abstract java.util.Map
> com.dreamer.s3viewer.client.S3ViewerService.getInfo()' threw an
> unexpected exception: java.lang.UnsatisfiedLinkError:
> com.google.gwt.http.client.URL.encodeImpl(Ljava/lang/String;)Ljava/
> lang/String;
>         at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure
> (RPC.java:360)
>         at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse
> (RPC.java:546)
>         at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall
> (RemoteServiceServlet.java:166)
>         at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost
> (RemoteServiceServlet.java:86)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>         at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:
> 487)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter
> (ServletHandler.java:1093)
>         at
> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter
> (TransactionCleanupFilter.java:43)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter
> (ServletHandler.java:1084)
>         at org.mortbay.jetty.servlet.ServletHandler.handle
> (ServletHandler.java:360)
>         at org.mortbay.jetty.security.SecurityHandler.handle
> (SecurityHandler.java:216)
>         at org.mortbay.jetty.servlet.SessionHandler.handle
> (SessionHandler.java:181)
>         at org.mortbay.jetty.handler.ContextHandler.handle
> (ContextHandler.java:712)
>         at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:
> 405)
>         at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle
> (DevAppEngineWebAppContext.java:54)
>         at org.mortbay.jetty.handler.HandlerWrapper.handle
> (HandlerWrapper.java:139)
>         at com.google.appengine.tools.development.JettyContainerService
> $ApiProxyHandler.handle(JettyContainerService.java:306)
>         at org.mortbay.jetty.handler.HandlerWrapper.handle
> (HandlerWrapper.java:139)
>         at org.mortbay.jetty.Server.handle(Server.java:313)
>         at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:
> 506)
>         at org.mortbay.jetty.HttpConnection$RequestHandler.content
> (HttpConnection.java:844)
>         at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:644)
>         at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
>         at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
>         at org.mortbay.io.nio.SelectChannelEndPoint.run
> (SelectChannelEndPoint.java:396)
>         at org.mortbay.thread.BoundedThreadPool$PoolThread.run
> (BoundedThreadPool.java:442)
> Caused by: java.lang.UnsatisfiedLinkError:
> com.google.gwt.http.client.URL.encodeImpl(Ljava/lang/String;)Ljava/
> lang/String;
>         at com.google.gwt.http.client.URL.encodeImpl(Native Method)
>         at com.google.gwt.http.client.URL.encode(URL.java:95)
>         at com.nubotech.gwt.oss.client.s3.AwsS3.createUrl(AwsS3.java:207)
>         at com.nubotech.gwt.oss.client.s3.AwsS3.httpRequest(AwsS3.java:102)
>         at com.nubotech.gwt.oss.client.s3.AwsS3.doPut(AwsS3.java:70)
>         at com.nubotech.gwt.oss.client.s3.S3OnlineStorageService$1.execute
> (S3OnlineStorageService.java:65)
>         at
> com.nubotech.gwt.oss.client.s3.S3OnlineStorageService.executeCommand
> (S3OnlineStorageService.java:218)
>         at com.nubotech.gwt.oss.client.s3.S3OnlineStorageService.createBucket
> (S3OnlineStorageService.java:63)
>         at com.dreamer.s3viewer.server.S3ViewerServiceImpl.getInfo
> (S3ViewerServiceImpl.java:34)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke
> (NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke
> (DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse
> (RPC.java:527)
>         ... 25 more
>
> 2009. 7. 13 오전 9:00:47
> com.google.appengine.tools.development.ApiProxyLocalImpl log
> SEVERE: [1247475647359000] javax.servlet.ServletContext log: Exception
> while dispatching incoming RPC call
> com.google.gwt.user.server.rpc.UnexpectedException: Service method
> 'public abstract java.util.Map
> com.dreamer.s3viewer.client.S3ViewerService.getInfo()' threw an
> unexpected exception: java.lang.UnsatisfiedLinkError:
> com.google.gwt.http.client.URL.encodeImpl(Ljava/lang/String;)Ljava/
> lang/String;
>         at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure
> (RPC.java:360)
>         at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse
> (RPC.java:546)
>         at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall
> (RemoteServiceServlet.java:166)
>         at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost
> (RemoteServiceServlet.java:86)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>         at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:
> 487)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter
> (ServletHandler.java:1093)
>         at
> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter
> (TransactionCleanupFilter.java:43)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter
> (ServletHandler.java:1084)
>         at org.mortbay.jetty.servlet.ServletHandler.handle
> (ServletHandler.java:360)
>         at org.mortbay.jetty.security.SecurityHandler.handle
> (SecurityHandler.java:216)
>         at org.mortbay.jetty.servlet.SessionHandler.handle
> (SessionHandler.java:181)
>         at org.mortbay.jetty.handler.ContextHandler.handle
> (ContextHandler.java:712)
>         at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:
> 405)
>         at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle
> (DevAppEngineWebAppContext.java:54)
>         at org.mortbay.jetty.handler.HandlerWrapper.handle
> (HandlerWrapper.java:139)
>         at com.google.appengine.tools.development.JettyContainerService
> $ApiProxyHandler.handle(JettyContainerService.java:306)
>         at org.mortbay.jetty.handler.HandlerWrapper.handle
> (HandlerWrapper.java:139)
>         at org.mortbay.jetty.Server.handle(Server.java:313)
>         at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:
> 506)
>         at org.mortbay.jetty.HttpConnection$RequestHandler.content
> (HttpConnection.java:844)
>         at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:644)
>         at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
>         at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
>         at org.mortbay.io.nio.SelectChannelEndPoint.run
> (SelectChannelEndPoint.java:396)
>         at org.mortbay.thread.BoundedThreadPool$PoolThread.run
> (BoundedThreadPool.java:442)
> Caused by: java.lang.UnsatisfiedLinkError:
> com.google.gwt.http.client.URL.encodeImpl(Ljava/lang/String;)Ljava/
> lang/String;
>         at com.google.gwt.http.client.URL.encodeImpl(Native Method)
>         at com.google.gwt.http.client.URL.encode(URL.java:95)
>         at com.nubotech.gwt.oss.client.s3.AwsS3.createUrl(AwsS3.java:207)
>         at com.nubotech.gwt.oss.client.s3.AwsS3.httpRequest(AwsS3.java:102)
>         at com.nubotech.gwt.oss.client.s3.AwsS3.doPut(AwsS3.java:70)
>         at com.nubotech.gwt.oss.client.s3.S3OnlineStorageService$1.execute
> (S3OnlineStorageService.java:65)
>         at
> com.nubotech.gwt.oss.client.s3.S3OnlineStorageService.executeCommand
> (S3OnlineStorageService.java:218)
>         at com.nubotech.gwt.oss.client.s3.S3OnlineStorageService.createBucket
> (S3OnlineStorageService.java:63)
>         at com.dreamer.s3viewer.server.S3ViewerServiceImpl.getInfo
> (S3ViewerServiceImpl.java:34)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke
> (NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke
> (DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse
> (RPC.java:527)
>         ... 25 more
>
> ServiceImple Codes below:
>
> package com.dreamer.s3viewer.server;
>
> import java.util.ArrayList;
> import java.util.List;
> import java.util.Map;
>
> import com.dreamer.s3viewer.client.S3ViewerService;
> import com.google.gwt.core.client.GWT;
> import com.google.gwt.user.server.rpc.RemoteServiceServlet;
> import com.nubotech.gwt.oss.client.BucketResult;
> import com.nubotech.gwt.oss.client.BucketResultCallback;
> import com.nubotech.gwt.oss.client.ObjectHolder;
> import com.nubotech.gwt.oss.client.ObjectHolderResult;
> import com.nubotech.gwt.oss.client.ObjectHolderResultCallback;
> import com.nubotech.gwt.oss.client.OnlineStorageService;
> import com.nubotech.gwt.oss.client.OnlineStorageServiceFactory;
> import com.nubotech.gwt.oss.client.auth.Credential;
>
> @SuppressWarnings("serial")
> public class S3ViewerServiceImpl extends RemoteServiceServlet
> implements S3ViewerService{
>
>         @Override
>         public Map<String, List<String>> getInfo() {
>                 final String myAccount          = something ;
>                 final String mySecretKey        = something;
>                 final String S3_HOST            = 
> "sinnytest.s3.amazonaws.com/";
>
>                 Credential credential = new Credential(myAccount, 
> mySecretKey);
>
>                 OnlineStorageService storageService =
> OnlineStorageServiceFactory.getService(credential);
>
>                 storageService.setHost(S3_HOST);
>                 storageService.createBucket("sinnyBucket");
>
> //              storageService.listAllBuckets(new BucketResultCallback(){
> //
> //                     �...@override
> //                      public void onBucketResult(BucketResult bucket) {
> //                              for (int i = 0; i < bucket.getRowCount(); 
> i++) {
> //                                      GWT.log("bucket="+ 
> bucket.get(i).getName(),null);
> //                              }//for
> //                      }//onBucketResul()
> //
> //              });
>
>                 storageService.getObject("sinnyTest", "error.log",  new
> ObjectHolderResultCallback(){
>
>                         @Override
>                         public void onObjectHolderResult(ObjectHolderResult 
> result) {
>                                 ObjectHolder oh = result.getObjectHolder();
>                                 GWT.log("data : "+ oh.getDataAsString(), 
> null);
>
>                         }
>
>                 });
>
>                 return null;
>         }
>
> }//S3ViewerServiceImpl
>
> Thank you advance.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
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-Web-Toolkit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to