Google app engine Jersey在Google应用程序引擎中引发异常

Google app engine Jersey在Google应用程序引擎中引发异常,google-app-engine,jersey,Google App Engine,Jersey,我正在尝试使用mail gun API发送消息 public Map sendMail(String toMailId, String subject, String html) { String useremail = CommonAttributesHelper.getLoggedInUser(getThreadLocalRequest()); log.info("Logged in user email is " + useremail); Preconditions.che

我正在尝试使用mail gun API发送消息

public Map sendMail(String toMailId, String subject, String html) {
  String useremail = CommonAttributesHelper.getLoggedInUser(getThreadLocalRequest());
  log.info("Logged in user email is " + useremail);

  Preconditions.checkNotNull(toMailId);
  Preconditions.checkNotNull(useremail);
  Preconditions.checkNotNull(html);

  UserMessagesAndErrors ume = ThreadLocalObjects.getThreadLocalUserMessagesAndErrors().get();
  Map<String, Object> map = new HashMap<String, Object>();
  map.put("ume", ume);

  Client client = Client.create();
  client.addFilter(new HTTPBasicAuthFilter("api", "key-XXXXXXXXXXXXXXXXX"));

  WebResource webResource =
      client.resource("https://api.mailgun.net/v3/sandboxXXXXXXXX.mailgun.org/messages");

  MultivaluedMapImpl formData = new MultivaluedMapImpl();
  formData.add("from", useremail);
  formData.add("to", toMailId);
  formData.add("subject", subject);
  formData.add("html", html);

  webResource.type(MediaType.APPLICATION_FORM_URLENCODED).post(ClientResponse.class, formData);
  ume.addMessage("Mail sent successfully");
  return map; 
}
publicmap sendMail(字符串tomaild、字符串subject、字符串html){
字符串useremail=CommonAttributeHelper.getLoggedInUser(getThreadLocalRequest());
log.info(“登录的用户电子邮件为”+用户电子邮件);
先决条件。checkNotNull(toMailId);
先决条件。checkNotNull(useremail);
先决条件。checkNotNull(html);
UserMessagesAndErrors ume=ThreadLocalObjects.getThreadLocalUserMessagesAndErrors().get();
Map Map=newhashmap();
地图放置(“ume”,ume);
Client=Client.create();
addFilter(新的HTTPBasicAuthFilter(“api”,“key-xxxxxxxxxxxxxx”);
网络资源网络资源=
客户端资源(“https://api.mailgun.net/v3/sandboxXXXXXXXX.mailgun.org/messages");
MultivaluedMapImpl formData=新的MultivaluedMapImpl();
formData.add(“from”,useremail);
formData.add(“to”,toMailId);
formData.添加(“主题”,主题);
添加(“html”,html);
webResource.type(MediaType.APPLICATION\u FORM\u URLENCODED).post(ClientResponse.class,formData);
ume.addMessage(“成功发送邮件”);
返回图;
}
它在本地运行良好,但我在远程谷歌应用程序引擎服务器中遇到了异常,即使邮件已发送。我已经复制了错误堆栈跟踪并粘贴在下面

com.sun.jersey.core.spi.component.ProviderFactory __getComponentProvider: The provider class, class com.sun.jersey.atom.rome.impl.provider.entity.AtomFeedProvider, could not be instantiated. Processing will continue but the class will not be utilizedjava.lang.SecurityException: Unable to get members for class com.sun.jersey.atom.rome.impl.provider.entity.AtomFeedProvider
at com.google.appengine.runtime.Request.process-274b4b6665811552(Request.java)
at java.lang.Class.getDeclaredMethods(Class.java:289)
at com.sun.jersey.core.reflection.MethodList.getAllDeclaredMethods(MethodList.java:70)
at com.sun.jersey.core.reflection.MethodList.<init>(MethodList.java:64)
at com.sun.jersey.core.spi.component.ComponentConstructor.getPostConstructMethods(ComponentConstructor.java:132)
at com.sun.jersey.core.spi.component.ComponentConstructor.<init>(ComponentConstructor.java:124)
at com.sun.jersey.core.spi.component.ProviderFactory.__getComponentProvider(ProviderFactory.java:165)
at com.sun.jersey.core.spi.component.ProviderFactory.getComponentProvider(ProviderFactory.java:137)
at com.sun.jersey.core.spi.component.ProviderServices.getComponent(ProviderServices.java:283)
at com.sun.jersey.core.spi.component.ProviderServices.getServices(ProviderServices.java:163)
at com.sun.jersey.core.spi.factory.MessageBodyFactory.initReaders(MessageBodyFactory.java:176)
at com.sun.jersey.core.spi.factory.MessageBodyFactory.init(MessageBodyFactory.java:162)
at com.sun.jersey.api.client.Client.init(Client.java:343)
at com.sun.jersey.api.client.Client.access$000(Client.java:119)
at com.sun.jersey.api.client.Client$1.f(Client.java:192)
at com.sun.jersey.api.client.Client$1.f(Client.java:188)
at com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:193)
at com.sun.jersey.api.client.Client.<init>(Client.java:188)
at com.sun.jersey.api.client.Client.<init>(Client.java:160)
at com.sun.jersey.api.client.Client.create(Client.java:673)
at com.veersoft.gwt.server.CommonGwtServiceImpl.sendMail(CommonGwtServiceImpl.java:83)
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:44)
at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:561)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:265)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:305)
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 com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:62)
at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.veersoft.filter.ResetUserMessagesAndErrorsFilter.doFilter(ResetUserMessagesAndErrorsFilter.java:30)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.googlecode.objectify.cache.AsyncCacheFilter.doFilter(AsyncCacheFilter.java:59)
at com.googlecode.objectify.ObjectifyFilter.doFilter(ObjectifyFilter.java:49)
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$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:439)
at com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:446)
at com.google.tracing.CurrentContext.runInContext(CurrentContext.java:256)
at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:310)
at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:302)
at com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:443)
at java.lang.Thread.run(Thread.java:745)Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
... 63 moreCaused by: java.lang.NoClassDefFoundError: com/sun/syndication/io/FeedException
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2621)
... 63 moreCaused by: java.lang.ClassNotFoundException: com.sun.syndication.io.FeedException
at com.google.appengine.runtime.Request.process-274b4b6665811552(Request.java)
... 63 more
com.sun.jersey.core.spi.component.ProviderFactory\uu getComponentProvider:无法实例化提供程序类com.sun.jersey.atom.rome.impl.provider.entity.AtomFeedProvider。处理将继续,但该类将不可用。djava.lang.SecurityException:无法获取com.sun.jersey.atom.rome.impl.provider.entity.AtomFeedProvider类的成员
位于com.google.appengine.runtime.Request.process-274B4665811552(Request.java)
位于java.lang.Class.getDeclaredMethods(Class.java:289)
位于com.sun.jersey.core.reflection.MethodList.getAllDeclaredMethods(MethodList.java:70)
位于com.sun.jersey.core.reflection.MethodList.(MethodList.java:64)
位于com.sun.jersey.core.spi.component.ComponentConstructor.getPostConstructMethods(ComponentConstructor.java:132)
位于com.sun.jersey.core.spi.component.ComponentConstructor.(ComponentConstructor.java:124)
位于com.sun.jersey.core.spi.component.ProviderFactory.\uu getComponentProvider(ProviderFactory.java:165)
位于com.sun.jersey.core.spi.component.ProviderFactory.getComponentProvider(ProviderFactory.java:137)
位于com.sun.jersey.core.spi.component.ProviderServices.getComponent(ProviderServices.java:283)
位于com.sun.jersey.core.spi.component.ProviderServices.getServices(ProviderServices.java:163)
位于com.sun.jersey.core.spi.factory.MessageBodyFactory.initReaders(MessageBodyFactory.java:176)
位于com.sun.jersey.core.spi.factory.MessageBodyFactory.init(MessageBodyFactory.java:162)
位于com.sun.jersey.api.client.client.init(client.java:343)
com.sun.jersey.api.client.client.access$000(client.java:119)
位于com.sun.jersey.api.client.client$1.f(client.java:192)
com.sun.jersey.api.client.client$1.f(client.java:188)
位于com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:193)
位于com.sun.jersey.api.client.client.(client.java:188)
位于com.sun.jersey.api.client.client.(client.java:160)
位于com.sun.jersey.api.client.client.create(client.java:673)
位于com.veersoft.gwt.server.commongwtserviceinpl.sendMail(commongwtserviceinpl.java:83)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)中
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:44)
位于com.google.gwt.user.server.rpc.rpc.invokeAndEncodeResponse(rpc.java:561)
位于com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:265)
位于com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:305)
位于com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
位于javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
位于javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
位于com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
位于com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
位于com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
在com.google.inject.servlet.filterchaininciation.doFilter上(filterchaininciation.java:62)
位于com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
位于com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
位于com.veersoft.filter.ResetUserMessagesAndErrorsFilter.doFilter(ResetUserMessagesAndErrorsFilter.java:30)
位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
在com.googlecode.objectify.cache.AsyncCacheFilter.doFilter(AsyncCacheFilter.java:59)上
位于com.googlecode.objectify.ObjectifyFilter.doFilter(ObjectifyFilter.java:49)
位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
位于org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
位于org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
位于org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
位于org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
位于org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
位于org.mortbay.jetty.handler.HandlerWrapper.handle(Ha