2013-11-01 7 views
0

Я пытаюсь выполнить вызовы со стороны клиента на сервер с помощью RPC и когда веб-приложение настроено, консоль показывает ошибки."com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException" Появляется на консоли

com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException: это приложение устарело, нажмите кнопку обновления в своем браузере. (Заблокированная попытка доступа к интерфейсу «com.mycompany.project.client.Connection», который не реализован «com.mycompany.project.server.MySQLConnection»; это либо неправильная настройка, либо попытка взлома)

Есть ли любое решение для этого, потому что я довольно застрял здесь.

ответ

0

Проверьте ваш gwt-servlet.jar и ваш gwt-user.jar. Похоже, что у них разные версии.

+0

Может ли я уточнить как банка файл можно найти в моей справочной библиотеке, где я добавил в качестве внешней баночки. В этом случае, как проверить версию для каждого файла jar? – ZhenLiang

0

Проблема заключается в том, что клиентский код, создающий запросы RPC, отличается от кода сервера. Возможно, вы сможете восстановить, просто очистив кеш в своем браузере и заставив его перезагрузить все ресурсы на странице.

Если нет, вот скрипт муравья, который я написал для полной очистки вашего проекта. Я использую его со всеми моими проектами. Измените его, чтобы он соответствовал вашему проекту, запустил его, а затем запустил Проект> Очистить ... затем сделать Компиляция Java, затем Компиляция GWT. Очистите кеш в браузере и посмотрите, есть ли у вас проблема после этого.

<?xml version="1.0" encoding="utf-8" ?> 
<project name="YOUR_PROJECT_NAME_HERE" default="clean" basedir="."> 

    <target name="clean" description="Cleans this project"> 
     <!-- <delete dir="war/common" failonerror="false" /> --> 
     <!-- <delete dir="war/gwt" failonerror="false" /> --> 
     <!-- add more delete tags for whatever modules you may have, just like above --> 

     <delete dir="gwt-unitCache" failonerror="false" /> 
     <delete dir="war/WEB-INF/classes" failonerror="false" /> 
     <delete dir="war/WEB-INF/deploy" failonerror="false" /> 
     <delete> 
      <fileset dir="." includes="*.war" /> 
     </delete> 
    </target> 

</project> 
+0

Я сделал все выше, что вы упомянули, но такая же ошибка все еще появляется. Кстати, мой файл war/Web-Inf не состоит из вызова подпапки «classes», это нормально? – ZhenLiang

+0

, а что касается XML, который вы написали, я хотел бы спросить, находится ли он между ....? – ZhenLiang

+0

Извините, я забыл объяснить бит XML. Сохраните мой XML в файле 'clean.xml' внутри корневого каталога вашего проекта. Щелкните правой кнопкой мыши по нему, запустите как> Ant build. Каталог 'WEB-INF/classes' существует, но Eclipse не показывает его, потому что он задан как« выходная »папка для вашего проекта. Жаль, что это не сработало. Можете ли вы также проверить свою перспективу «Проблемы» в Eclipse, чтобы узнать, показывает ли она какие-либо проблемы с версией GWT SDK? – Churro

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