ColdFusion 9 Upgrade: неверное смещение целевой позиции ветви - PullRequest
1 голос
/ 07 июля 2010

Я работаю над обновлением приложения с MX7 до 9 и тестированием его на моем Mac-сервере Dev. У меня есть страница с большим cfswitch - около 20 разных случаев, но не более 10-12 строк. Только в CF9, когда в одном из этих случаев делается cfinclude (а это почти все из них), я получаю сообщение об ошибке:

org.apache.bcel.generic.ClassGenException: Invalid branch target position offset for jsr[168](3):-1: -1: astore[58](2) 27 at
cfindex2ecfm581352809._factor4(/Users/dlaughland/Workspace/abcapp/surveymanager /surveys/survey/index.cfm:34) at
cfindex2ecfm581352809._factor28(/Users/dlaughland/Workspace/abcapp/surveymanager/surveys/survey/index.cfm:33) at
cfindex2ecfm581352809.runPage(/Users/dlaughland/Workspace/abcapp/surveymanager/surveys/survey/index.cfm:1) at
cfApplication2ecfc1705547767$funcONREQUEST.runFunction(/Users/dlaughland/Worksp ace/abcapp/Application.cfc:215)

Я много гуглил, и лучшее объяснение, которое я могу найти, - это ошибка JDK, которая предположительно была исправлена ​​в MX7! Чем это вызвано? Как мне это исправить? Это не единственная страница с большим переключателем cfswitch, поэтому я действительно не хочу переписывать все в структуры cfif.

Ответы [ 2 ]

0 голосов
/ 08 июля 2010

Если вы обновились с CF7 до CF9 с кодом, уже имеющимся на сервере, попробуйте удалить все классы из WEB-INF / cfclasses и перезапустить CF.

0 голосов
/ 07 июля 2010

Вы можете отправить сообщение об ошибке, но вот несколько шагов, которые могут помочь вам обойти эту проблему.

  1. Попробуйте обновить версию JRE, вы можете получить самую новую и лучшую здесь . Затем вы можете попросить CF использовать эту JRE через CF Admin> Настройки сервера> Java и JVM . Дальнейшие инструкции здесь .
  2. Попробуйте использовать контейнер сервлета, например, используйте Tomcat вместо связанного JRun. Вот некоторые инструкции .

Могу ли я спросить, собираетесь ли вы использовать это в производстве на Mac? Если нет, попробуйте запустить свой код в ОС, которая будет отражать ваш живой сайт. Ошибка (если это ошибка) не может быть в этой версии CF.

Надеюсь, что-то там поможет.

...