2009-08-19 13 views
3

Welches ist der beste Weg, um existierende Feder-MVC-Project mit Flex zu integrieren. Ich benutze Spring-2.5 Lib mit Anmerkungen.Spring MVC und Flex-Integration über BlazeDS?

beispiels meiner Liste Controller:

package xxx.xxx.controller; 

@Controller 
public class ListController { 

@Autowired 
private ColorHome colorHome; 

@RequestMapping("/admin/colors.do") 
public ModelMap colorsHandler() { 
    Collection<Object> colors = this.colorHome 
      .findColors(); 
    return new ModelMap(colors); 
} 

Ich habe auch eine colors.jsp, die die Farben anzeigt. Jetzt möchte ich Flex als UI-Layer integrieren. Ich muss nur die Spring-View mit den oben gezeigten RequestMappings integrieren.

Antwort

1

Los geht BlazeDS. Installieren Sie es mit der WAR-Datei. Sie benötigen auch das Flexglas von Spring.

In der web.xml Datei, fügen Sie diese:

<context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value> 
     /WEB-INF/flexContext.xml 
    </param-value> 
</context-param> 
<servlet> 
    <servlet-name>flex</servlet-name> 
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 
<servlet-mapping> 
    <servlet-name>flex</servlet-name> 
    <url-pattern>/messagebroker/*</url-pattern> 
</servlet-mapping> 

erstellen flex-servlet.xml Datei.

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
     xmlns:flex="http://www.springframework.org/schema/flex" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> 
</beans> 

Erstellen Sie eine Datei "flexContext.xml".

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
xmlns:flex="http://www.springframework.org/schema/flex" 
    ... 
"> 
    <flex:message-broker /> 

    <flex:remoting-destination destination-id="flexService" ref="beanFromApplicationContext" /> 

</beans> 

Dies sollte ausreichen, um die Endpunkte für die Remotierung zu erhalten.

In Flex, erstellen Sie ein remoteObject und geben Sie ihm ein Ziel "flexService" oder was auch immer Sie die Ziel-ID auf dem zu setzen.