Flex 4, Spring 3 с настройками Hibernate & MySQl + проблемы с настройкой - PullRequest
1 голос
/ 08 октября 2010

Такого рода вопрос задавался ранее, но в StackOverlfow его не поддержали ... возможно, потому, что некоторые люди думают, что это элементарно ... но новички, как я, потратили на это дни, но безрезультатно.Пожалуйста, помогите [я уверен, что это будет когда-либо возникающая проблема]

Я пытаюсь создать гибкий проект и хочу интегрировать с ним Spring 3.0 и более позднюю версию Hibernate.

Iпытался следовать инструкциям Джеймса Уорда по Refcard - http://refcardz.dzone.com/refcardz/flex-4-and-spring-3, к сожалению, я застрял в самой начальной точке, так как возникла некоторая проблема при развертывании проекта в JBoss (в refcardz это говорит Tomcat) ..

Я пытался использовать книгу «Библия интеграции с Flex и Java» [она использует JBoss], может кто-нибудь сказать мне, если это правильно ... или есть какой-то другой текст?Пожалуйста, помогите, так как я застрял на этом в течение 2 дней ... Я хочу написать код и двигаться дальше, а не застревать в проблемах конфигурации.Я буду очень благодарен.

ОБНОВЛЕНИЕ-БОЛЬШЕ ДЕТАЛЕЙ:

Я начал с использования Библии интеграции Flex и Java, так как понятия не имел, как интегрироватьтак много всего (там нет текста, что так всегда) ».Когда я добрался до середины книги, я не смог сделать несколько шагов, так как я думаю, что версия вещей изменилась.Я искал и пошел к примеру Джеймса Уорда (опять же, не очень подробный для глупого новичка, такого как Я).Используя Refcardz, я застрял в следующем: при создании проекта flex spring я вижу ошибку в консоли, которая не может быть развернута на сервере (пробовал JBoss и Tomcat).Трассировка ошибок выглядит следующим образом (я думаю, что с этим связан какой-то jar, как упомянуто в Refcardz):

Oct 8, 2010 2:07:24 PM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jdk1.6.0_21\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;c:\Program Files\Common Files\Lenovo;C:\Program Files\Common Files\Roxio Shared\10.0\DLLShared\;C:\Program Files\Common Files\Roxio Shared\DLLShared\;C:\Program Files\Common Files\Roxio Shared\DLLShared\;C:\Program Files\Common Files\Roxio Shared\10.0\DLLShared\;C:\Program Files\ThinkPad\ConnectUtilities;C:\Program Files\Lenovo\Client Security Solution;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\WinSCP3\;C:\Program Files\Java\jdk1.6.0_21\bin;C:\apache-ant-1.8.1\bin;C:\Program Files\Java\jdk1.6.0_21\bin;C:\apache-ant-1.8.1\bin
Oct 8, 2010 2:07:24 PM org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.j2ee.server:flexspring' did not find a matching property.
Oct 8, 2010 2:07:24 PM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-80
Oct 8, 2010 2:07:24 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 398 ms
Oct 8, 2010 2:07:24 PM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Oct 8, 2010 2:07:24 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.29
Oct 8, 2010 2:07:25 PM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring root WebApplicationContext
Oct 8, 2010 2:07:25 PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.CannotLoadBeanClassException: Error loading class [org.springframework.flex.core.ExceptionTranslationAdvice] for bean with name 'org.springframework.flex.core.ExceptionTranslationAdvice#0' defined in null: problem with class file or dependent class; nested exception is java.lang.NoClassDefFoundError: org/aopalliance/aop/Advice
    at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1238)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:576)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getType(AbstractBeanFactory.java:549)
    at org.springframework.flex.config.RemotingAnnotationPostProcessor.findRemotingDestinations(RemotingAnnotationPostProcessor.java:148)
    at org.springframework.flex.config.RemotingAnnotationPostProcessor.postProcessBeanFactory(RemotingAnnotationPostProcessor.java:79)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:663)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:653)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:407)
    at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
    at org.apache.catalina.core.StandardService.start(StandardService.java:519)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: java.lang.NoClassDefFoundError: org/aopalliance/aop/Advice
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2733)
    at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1124)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1612)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2733)
    at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1124)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1612)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2733)
    at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1124)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1612)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
    at org.springframework.util.ClassUtils.forName(ClassUtils.java:257)
    at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:408)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doResolveBeanClass(AbstractBeanFactory.java:1256)
    at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1227)
    ... 25 more
Caused by: java.lang.ClassNotFoundException: org.aopalliance.aop.Advice
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
    ... 53 more
Oct 8, 2010 2:07:25 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Oct 8, 2010 2:07:25 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/flexspring] startup failed due to previous errors
Oct 8, 2010 2:07:25 PM org.apache.catalina.core.ApplicationContext log
INFO: Closing Spring root WebApplicationContext

Может кто-нибудь дать какой-нибудь пошаговый метод, чтобы сделать это ... или какой-нибудь существующий текст, чтобы получитьэта интуиция.Я студент и интернирую.Не чувствовали себя беспомощными годами.Я просто не могу заставить вещи случиться.[Интересно, я самый глупый, чтобы иметь такую ​​проблему.]

С уважением, Чираю

СЛЕДУЮЩАЯ ПРОБЛЕМА ОБНОВЛЕНИЕ-10/21/2010

Вышеупомянутая проблема была решена благодаря Splash и James (ответ ниже), но теперь, после того как я сделал, как сказано в Refcardz, и sayHello.mxml загружается в браузер, я ввожу текст и нажимаю кнопку sayHello, при которой появляется эта ошибка-

[RPC Fault faultString="Send failed" faultCode="Client.Error.MessageSend" faultDetail="Channel.Connect.Failed error NetConnection.Call.Failed: HTTP: Status 404: url: 'http://localhost:8080/flexsping/messagebroker/amf'"] at mx.rpc::AbstractInvoker/http://www.adobe.com/2006/flex/mx/internal::faultHandler()[E:\dev\4.x\frameworks\projects\rpc\src\mx\rpc\AbstractInvoker.as:345] at mx.rpc::Responder/fault()[E:\dev\4.x\frameworks\projects\rpc\src\mx\rpc\Responder.as:68] at mx.rpc::AsyncRequest/fault()[E:\dev\4.x\frameworks\projects\rpc\src\mx\rpc\AsyncRequest.as:113] at mx.messaging::ChannelSet/faultPendingSends()[E:\dev\4.x\frameworks\projects\rpc\src\mx\messaging\ChannelSet.as:1614] at mx.messaging::ChannelSet/channelFaultHandler()[E:\dev\4.x\frameworks\projects\rpc\src\mx\messaging\ChannelSet.as:1206] at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at mx.messaging::Channel/connectFailed()[E:\dev\4.x\frameworks\projects\rpc\src\mx\messaging\Channel.as:1128] at mx.messaging.channels::PollingChannel/connectFailed()[E:\dev\4.x\frameworks\projects\rpc\src\mx\messaging\channels\PollingChannel.as:406] at mx.messaging.channels::AMFChannel/statusHandler()[E:\dev\4.x\frameworks\projects\rpc\src\mx\messaging\channels\AMFChannel.as:453]

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

-Chirayu

Ответы [ 2 ]

3 голосов
/ 08 октября 2010

Вам нужно развернуть банку для org.aopalliance.aop.Advice. Я предполагаю, что это aopalliance-alpha1.jar (на который есть ссылка в руководстве по refcard), которого, кажется, нет в пути к классам. Этот шаг объяснен на странице 2 учебника по Refcard:

Затем вам нужно добавить зависимости в веб-приложение flexspring. Скопируйте все библиотеки / JAR-файлы Spring Framework в папку WebContent/WEB-INF/lib. [...] Сделайте то же самое для aopalliance.jar, [...]

Пожалуйста, внимательно прочитайте Refcard. Это подробное пошаговое руководство, которое должно охватывать любой необходимый шаг.

Дополнительные учебники можно найти в Adobe Developer Connection:

1 голос
/ 10 октября 2010

Попробуйте использовать что-то кроме раздутого мусора Spring и особенно мусора "AOP".Используйте PicoContainer на чистом Java и избавьтесь от всей этой нелепой конфигурации внедрения зависимостей XML (соглашение по конфигурации? ... да, верно) И невероятного количества зависимостей jar hell (таких как мусор aopappliance, который доставляет вам проблемы сейчас).

У Spring был свой день, и он выиграл большой чемпион, отстаивая несколько хороших концепций, таких как DI и TDD, но реализация концепции - отстой, на данный момент это просто абсурдное количество подпроектов, в которых участвует Spring Spring.Теперь есть лучшие альтернативы, которые основаны на реальном Java-программировании, а не на «XML-программировании».

Если вы новичок, вы все равно будете тратить время на изучение, и я гарантирую кривую обучения для конструктора на основе конструктора.Инъекция зависимости от пико проще.

http://www.picocontainer.org/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...