导航:首页 > 编程语言 > java调用flex

java调用flex

发布时间:2022-09-14 05:54:14

‘壹’ Flex中RemoteOject的java调用问题

internal function remotingSayHello(event:ResultEvent):void{
//Alert.show(event.result.toString());
//添加下面的
var resultText : String = event.result.toString();
output.text = resultText;
}

internal function init():void{
h.addEventListener(ResultEvent.RESULT,remotingSayHello);
//Alert.show(h.name);
//你打印出来的应该就是这里的值,将这个注释掉
//output.text = h.test(input.text);//这个不要了,都在处理结果的函数中去做。你这样是不能得到函数返回值的
}

你这样试试 ,希望我的回答对你有所帮助。

‘贰’ 在flex和java web工程交互时无法调用到JAVA端的方法

flex调用java还是使用http或者webservice吧,那个比较靠谱。flex并不是针对java做的。flex的后台可以是java也可以是php,dotnet

‘叁’ flex怎么调用java与数据库通信

flex做前端,可以发请求到;后台用java处理数据,(java与数据库连接),再返回数据给flex展现。

‘肆’ flex调用Java方法连接sqlserver

基于blazeDS的flex4与spring的程序实例步骤
环境:
jdk1.6
j2ee1.5
spring2.5.6
blazeDS3.3
tomcat6.0
flex4
myeclipse8.5
flashBuilder4

步骤:
一、 启动好blazeDS(即启动tomcat,在[tomcat]/webapps目录下产生一个blazeds文件夹(三个war包产生一个blazeds文件夹));
在myeclipse8.5新建一个web Project工程,工程名为webSpring;
把此工程加入blazeDS支持(即用blazeds下的WEB-INF文件夹替换掉web工程下的WEB-INF文件夹);
加入spring支持(把spring相关的jar包拷贝到webSpring/WebRoot/WEB-INF/lib目录下即可)。

二、 1. 在javaWeb工程webSpring的str目录下分别新建一下两个包:
cn.xuediit.myFactory、cn.xuediit.myService;
2. 在cn.xuediit.myFctory包下新建两个类:FlexFactoryImpl.java和SpringFactoryInstance.java
(1). FlexFactoryImpl.java:
package cn.xuediit.myFactory;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import flex.messaging.FactoryInstance;
import flex.messaging.FlexFactory;
import flex.messaging.config.ConfigMap;

public class FlexFactoryImpl implements FlexFactory {
private Log log = LogFactory.getLog(getClass());

/*override interface method*/
public void initialize(String id, ConfigMap configMap) {
System.out.println("1---flex工厂实现类重写的方法initialize");
}

/*override interface method*/
public FactoryInstance createFactoryInstance(String id, ConfigMap properties) {
System.out.println("2---flex工厂实现类重写的方法createFactoryInstance");
log.info("Create FactoryInstance.");
SpringFactoryInstance instance = new SpringFactoryInstance(this, id, properties);
instance.setSource(properties.getPropertyAsString(SOURCE, instance.getId()));
return instance;
}

/*override interface method*/
public Object lookup(FactoryInstance instanceInfo) {
System.out.println("4---flex工厂实现类重写的方法lookup");
log.info("Lookup service object.");
return instanceInfo.lookup();
}

}

(2).SpringFactoryInstance.java
package cn.xuediit.myFactory;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.context.ApplicationContext;
import org.springframework.web.context.support.WebApplicationContextUtils;

import flex.messaging.FactoryInstance;
import flex.messaging.FlexContext;
import flex.messaging.FlexFactory;
import flex.messaging.config.ConfigMap;
import flex.messaging.services.ServiceException;

public class SpringFactoryInstance extends FactoryInstance {
private Log log = LogFactory.getLog(getClass());

SpringFactoryInstance(FlexFactory factory, String id, ConfigMap properties) {
super(factory, id, properties);
}

public Object lookup() {
System.out.println("3---spring工厂类的方法lookup");
ApplicationContext appContext = WebApplicationContextUtils.(FlexContext.getServletConfig().getServletContext());
String beanName = getSource();
try {
log.info("Lookup bean from Spring ApplicationContext: " + beanName);
return appContext.getBean(beanName);
} catch (NoSuchBeanDefinitionException nex) {
ServiceException e = new ServiceException();
String msg = "Spring service named '" + beanName + "' does not exist.";
e.setMessage(msg);
e.setRootCause(nex);
e.setDetails(msg);
e.setCode("Server.Processing");
throw e;
} catch (BeansException bex) {
ServiceException e = new ServiceException();
String msg = "Unable to create Spring service named '" + beanName + "'.";
e.setMessage(msg);
e.setRootCause(bex);
e.setDetails(msg);
e.setCode("Server.Processing");
throw e;
} catch (Exception ex) {
ServiceException e = new ServiceException();
String msg = "Unexpected exception when trying to create Spring service named '" + beanName + "'.";
e.setMessage(msg);
e.setRootCause(ex);
e.setDetails(msg);
e.setCode("Server.Processing");
throw e;
}
}

}

3. 在cn.xuediit.myService包下新建两个类:FService.java和FServicesImpl.java
(1). FService.java
package cn.xuediit.myService;

public interface FService {
public String sayHello(String name);
}

(2). FServicesImpl.java
package cn.xuediit.myService;

public class FServicesImpl implements FService {
public String sayHello(String name) {
System.out.println("5---服务层实现类(本质上的与flex交互的类)");
return "我是服务层的服务实现类==" + name;
}

}

三、 1、 在javaWeb工程webSpring下,在文件webSpring/WebRoot/WEB-INF/web.xml的<web-app>标签下添加子节点:
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>

2、 在javaWeb工程webSpring下,在webSpring/WebRoot/WEB-INF目录下新建一个文件:applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">

<bean id="fServiceImplBeanID" class="cn.xuediit.myService.FServicesImpl"></bean>

</beans>

四、 1、 在javaWeb工程webSpring下,在WebRoot/WEB-INF/flex/remoting-config.xml文件中的<service>标签下添加:
<destination id="destinationID">
<properties>
<factory>flexFactoryImplID</factory>
<source>fServiceImplBeanID</source>
<scope>application</scope>
</properties>
</destination>

2、 在javaWeb工程webSpring下,在WebRoot/WEB-INF/flex/services-config.xml文件中的<services-config>标签下添加:
<factories>
<factory id="flexFactoryImplID" class="cn.xuediit.myFactory.FlexFactoryImpl"/>
</factories>

五、 给此javaWeb工程添加tomcat支持,启动tomcat(这个容易就不说了)。

六、 在flashBuilder下新建一个基于blazeDS的flex项目(以webSpring为后台工程),工程名为webFb;
webFb.mxml:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/halo"
minWidth="500" minHeight="200">

<fx:Script>
<![CDATA[
import mx.core.Application;
import mx.rpc.events.FaultEvent;
import mx.collections.ArrayCollection;
import mx.rpc.remoting.mxml.RemoteObject;
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;

public function submit(name:String):void{
var remote:RemoteObject = new RemoteObject();
remote.destination = "destinationID";
remote.endpoint = "http://localhost:8080/webSpring/messagebroker/amf";
remote.addEventListener(ResultEvent.RESULT, myResult);
remote.addEventListener(FaultEvent.FAULT,fault);
remote.sayHello(name);
}

private function myResult(evt:ResultEvent):void{
Alert.show(evt.result.toString());
}

private function fault(evt:FaultEvent):void{
Alert.show(evt.fault.message);
}

]]>
</fx:Script>

<s:Button x="240" y="11" label="要发送到" click="submit(nameTxt.text)"/>
<s:Label x="16" y="11" text="姓名"/>
<s:TextInput id="nameTxt" x="100" y="100"/>

</s:Application>

‘伍’ java和flex之间的通讯时怎么完成的详解

多种方式,
1,http
2,可以用webservice
3,也可以通过blazeDS调用remoteObject的java对象的方法

‘陆’ java+flex怎么上传文件

在Adobe的Flex RIA编程环境下,是无法读取本地文件的(据我所知),但是我们可以依赖于Flex调用后台的代码实现文件上传功能,我这里是利用Flex的URLRequest来向java的Servlet传送一个Http请求(Servlet集成自HttpServlet ,已实现文件上传功能),而Servlet响应请求之后会利用Apcahe的开源Jar包(org.apache.commons.fileupload.servlet.ServletFileUpload类)完成文件的生成。 通过以上原理就可以利用Flex+java实现文件上传。( 多自己研究一下吧 , 我也是自己慢慢琢磨出来的 。 呵呵 。我可不经常上网络帮你哦

‘柒’ java编程,flex是什么东西

简单的说一下,flex之所以出现,是应为编写flash对于编程人员来说太hard了,编写flash要用美术功底,还要一帧一帧的弄,对程序员来说太难,所以flex应运出世。flex就是以编程(程序员熟悉)的方式来实现flash功能,所用语言为actionscript语言,最后会编译出一个swf文件,也就是flash文件,这样对程序员来说就方便多了。听同事说google地图(网页)好像就是用flex做的。

‘捌’ 如何利用Flex调用java类做登陆验证

这个要看你所使用的框架了,一般不会用CycleLive,我曾经用过Struts,Flex调用它Html框架的js文件,通过js调用struts中的action,则达到了验证的目的

‘玖’ 怎么用java和flex实现增删改查

flex与java实现增删改查
用的是MySQL数据库。
1,建一个userdb库,再建userinfo表,字 段:id(int),username(varchar),password(varchar)。

view plain to clipboardprint?
create database userdb;
use userdb;
create table userinfo(
id int(10) not null auto_increment,
username varchar(20),
password varchar(20),
primary key(id));
2,DBConnection.java
view plain to clipboardprint?
package com.datainfo;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class DBConnection {
public static Connection getConnection() throws ClassNotFoundException,
SQLException {
Connection conn = null;
String driver = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://localhost:3306/userdb";
String username = "root";
String password = "mysql";
Class.forName(driver);
conn = DriverManager.getConnection(url, username, password);
return conn;
}
}
3,User.java
view plain to clipboardprint?
package com.datainfo;

public class User {
private int id;
private String username;
private String password;

public User() {

}

/**
* @return the id
*/
public int getId() {
return id;
}

/**
* @param id
* the id to set
*/
public void setId(int id) {
this.id = id;
}

/**
* @return the username
*/
public String getUsername() {
return username;
}

/**
* @param username
* the username to set
*/
public void setUsername(String username) {
this.username = username;
}

/**
* @return the password
*/
public String getPassword() {
return password;
}

/**
* @param password
* the password to set
*/
public void setPassword(String password) {
this.password = password;
}
}
4,UserDAO.java
view plain to clipboardprint?
package com.datainfo;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;

import com.datainfo.DBConnection;

public class UserDAO {
public ArrayList getUserList() throws ClassNotFoundException, SQLException {
Connection conn = DBConnection.getConnection();
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from userinfo");
ArrayList userList = null;
try {
userList = new ArrayList();
while (rs.next()) {
User user = new User();
user.setId(rs.getInt("id"));
user.setUsername(rs.getString("username"));
user.setPassword(rs.getString("password"));
userList.add(user);
}
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return userList;
}

public void addUser(User user) throws ClassNotFoundException, SQLException {
Connection conn = DBConnection.getConnection();
String sql = "insert into userinfo (username,password) values (?,?)";
try {
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, user.getUsername());
pstmt.setString(2, user.getPassword());
pstmt.executeUpdate();
pstmt.close();
conn.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

public void updataUser(User user) throws ClassNotFoundException,
SQLException {
Connection conn = DBConnection.getConnection();
String sql = "update userinfo set username=?,password=? where id=?";
try {
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, user.getUsername());
pstmt.setString(2, user.getPassword());
pstmt.setInt(3, user.getId());
pstmt.executeUpdate();
pstmt.close();
conn.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

public void deleteUser(User user) throws ClassNotFoundException,
SQLException {
Connection conn = DBConnection.getConnection();
String sql = "delete from userinfo where id =?";
try {
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, user.getId());
pstmt.executeUpdate();
pstmt.close();
conn.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

‘拾’ flex与java到底是怎么结合的 什么是flex 数据绑定java

flex是前端框架 java是一门 语言 还是不要把基本概念混淆
flex所谓于java结合 是指的 前端的flex应用 于 后台java应用程序 通讯
flex 数据绑定java 这个 说法也不妥当 “数据绑定”是flex框架的一个特色功能 是指 可以 将一个变量 绑定到 组件的某个 可绑定属性上 变量发生变化 绑定的目标会自动更新 。所谓的绑定到java 准确的 应该是指 flex本地对象 映射为 后台java对象 这个在使用remoteObject通讯是才会用到

阅读全文

与java调用flex相关的资料

热点内容
压缩因子定义 浏览:966
cd命令进不了c盘怎么办 浏览:212
药业公司招程序员吗 浏览:972
毛选pdf 浏览:659
linuxexecl函数 浏览:727
程序员异地恋结果 浏览:374
剖切的命令 浏览:228
干什么可以赚钱开我的世界服务器 浏览:290
php备案号 浏览:990
php视频水印 浏览:167
怎么追程序员的女生 浏览:487
空调外压缩机电容 浏览:79
怎么将安卓变成win 浏览:459
手机文件管理在哪儿新建文件夹 浏览:724
加密ts视频怎么合并 浏览:775
php如何写app接口 浏览:804
宇宙的琴弦pdf 浏览:396
js项目提成计算器程序员 浏览:944
pdf光子 浏览:834
自拍软件文件夹名称大全 浏览:328