2013-04-06 3 views
1

Я пытаюсь передать некоторые параметры ответа с помощью Android в Java-приложение. Я использую jdk 1.6_32 для разработки Android и jdk1.5_06 на стороне сервера. Параметры, которые я пытаюсь передать, - это учетные данные для входа (String) и png-файл, который кодируется Base64 в строку. Вход учетные данные передается правильно, но, когда детские файл передается, сервер бросает следующее исключение:Ошибка неподдерживаемой версии класса в java?

15:08:33,264 ERROR [[ImageRetrieve]] Servlet.service() for servlet ImageRetrieve threw exception 
java.lang.UnsupportedClassVersionError: Bad version number in .class file 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:620) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) 
    at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1629) 
    at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:850) 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1299) 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1181) 
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) 
    at com.apd.test.ImageRetrieve.doPost(ImageRetrieve.java:46) 
    at com.apd.test.ImageRetrieve.doGet(ImageRetrieve.java:37) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:697) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) 
    at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) 
    at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39) 
    at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153) 
    at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) 
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) 
    at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) 
    at java.lang.Thread.run(Thread.java:595) 

Я не могу понять эту проблему.

ответ

2

Похоже, вы используете какой-то класс, который был скомпилирован с JDK6 на сервере (который работает на JDK5). Все классы на сервере должны быть скомпилированы с JDK5 для правильной работы вашей установки.

+0

Я очистил файлы классов и убедился, что они были скомпилированы на JDK5, все еще сталкиваясь с тем же исключением. –

+1

Я уверен, что вы используете сервер со старым JDK, чем тот, который использовался для компиляции классов. Об этом сообщает сообщение об ошибке. – chkal

+0

Я использую jar для Base64 ... он может быть скомпилирован в более высокой версии JDK ... это может быть проблема .. –

Смежные вопросы