flexエクスポートword

2673 ワード

flex端:<:HGroup width="100%"horizontalAlign="right"verticalAlign="middle">
				<s:Button label=" " click="print(event)"/>
				<s:Button label=" word" click="exportDataWithRO()"/>
			</s:HGroup>

 [Bindable]
			public var route:TouristRoute;

 private function exportDataWithRO():void {
				array.push(route);
				export.exportData("Doc2",new ArrayCollection(array));
			}
			private function exportResultHandler(event:ResultEvent):void {
				var jspFile:String = event.result as String;
				navigateToURL(new URLRequest(jspFile), "_blank");
			}
<fx:Declarations>
		<mx:RemoteObject id="export" destination="FlexDataExporter" showBusyCursor="true" concurrency="last">
			<mx:method name="exportData" result="exportResultHandler(event)" fault="exportFaultHandler(event)"/>
		</mx:RemoteObject>
		
		<mx:DateFormatter id="df" formatString="YYMMDD"/>
		<mx:DateFormatter id="dateFormat" formatString="YYYY-MM-DD"/>
	</fx:Declarations>

JAva側:
import flex.messaging.*;
import flex.messaging.io.ArrayCollection;

import java.io.*;

import javax.servlet.http.*;


public class FlexDataExporter extends HttpServlet implements Serializable {

	private static final long serialVersionUID = 2L;

	public HttpServletRequest request;
	public HttpServletResponse response;
	public FlexSession session;
	public FlexDataExporter() {
		request = FlexContext.getHttpRequest();
		session = FlexContext.getFlexSession();
		response = FlexContext.getHttpResponse();
	}
	public Object exportData(String reportName, ArrayCollection arrayConnection) throws Exception {
		String jspFileName = null;
		try {

    	    session.setAttribute("arrayList", arrayConnection);
    	    HttpServletRequest req = FlexContext.getHttpRequest();
            String contextRoot = null;
            contextRoot = req.getContextPath();
            jspFileName = contextRoot + "/jsp/test1.jsp?reportName="+reportName;
        } catch (Exception e) {
            e.printStackTrace();
		}
        return jspFileName;
	}

}