在Windows 7 Pro计算机上运行AMTU时遇到问题。
打开时运行正常但运行几天后崩溃。
以下是崩溃报告。
2013-09-14 09:48:19,482 [pool-3-thread-3] com.amazon.merchants.services.RetrieverService - 无法检索未确认的报告信息 - MWS请求ID未知 2013-09-14 09:48:19,482 [pool-3-thread-3] com.amazon.merchants.services.RetrieverService - MWS响应错误:内部错误 com.amazonaws.mws.MarketplaceWebServiceException:内部错误 在com.amazonaws.mws.MarketplaceWebServiceClient.processErrors(MarketplaceWebServiceClient.java:2342) 在com.amazonaws.mws.MarketplaceWebServiceClient.invoke(MarketplaceWebServiceClient.java:2231) 在com.amazonaws.mws.MarketplaceWebServiceClient.invoke(MarketplaceWebServiceClient.java:2011) 在com.amazonaws.mws.MarketplaceWebServiceClient.getReportList(MarketplaceWebServiceClient.java:1206) 在com.amazon.merchants.services.RetrieverService.processReportCheck(RetrieverService.java:94) 在com.amazon.merchants.services.RetrieverService.run(RetrieverService.java:46) at java.util.concurrent.Executors $ RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask $ Sync.innerRunAndReset(Unknown Source) at java.util.concurrent.FutureTask.runAndReset(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.access $ 101(未知来源) at java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.runPeriodic(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor $ Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor $ Worker.run(Unknown Source) 在java.lang.Thread.run(未知来源)
我也无法启动名为AMTU的Windows服务。获取以下错误:
本地计算机上的AMTU服务已启动然后停止
我怀疑它是Java版本问题。
在AMTU文档中,它说“需要Java版本1.6.0或更高版本(列为JDK / JRE - 6)”并链接到http://www.oracle.com/technetwork/java/archive-139210.html。该链接有许多下载链接,但没有列出“JDK / JRE - 6”。
AMTU文档:https://d28hcfptedr5ia.cloudfront.net/ug/AMTU_2.2_UserGuide.pdf
任何想法?
提前致谢。
答案 0 :(得分:0)
我读取此崩溃报告的方式,AMTU从MWS服务器获得了意外结果:
MWS responded with an error: Internal Error
AMTU中的错误处理似乎不足以优雅地处理HTTP状态500,并且您无法做很多事情。您可以在它们之间放置一个HTTP代理,并在它到达AMTU之前捕获该线路上的HTTP 500,将其替换为AMTU更优雅地处理的内容(例如,空XML结果或超时)。虽然亚马逊不会发回这些错误,但是在他们的方面错误500是错误的。
我严重怀疑Java版本与此有什么关系,但以防万一:你仍然可以下载JRE6,即使它已经过时了:
请注意,JRE6的真实名称是“Java SE运行时环境”,JDK6称为“Java SE开发工具包”。在撰写本文时,最新版本是“更新45”。您可能需要卸载Java 7以确保AMTU实际使用您想要的版本。另请注意,由于AMTU是32位进程,即使在64位窗口上运行,也需要32位JRE。