#
摘要: 让我们假定你所有的服务层类定义在以 'x.y.service' 为根的包内。 为了让service包(或子包)下所有名字以 'Service' 结尾的类的对象拥有默认的事务语义,你可以做如下的配置:
阅读全文
摘要: 1. float型float f=3.4是否正确?
答:不正确,应为float f=3.4f
2. 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
答:是引用传递。
阅读全文
摘要: 不用复杂的代码,就可以让您的JavaBeans自己控制到XML文件的相互转化。本文展示了怎样通过JOX来实现从JavaBeans到XML文件的相互转换。
为了灵活的满足Web应用和Web services需求的变化,Java和XML的轻便性和可扩展性使它们成为解决这一问题的理想选择。SAX (Simple API for XML), DOM (document.nbspObject Model), XSL (Extensible Stylesheet Language), XSLT (XSL Transformations), SOAP (Simple Object Access Protocol), and BML (Bean Markup Language)是XML领域内的相关技术。本文集合了Java和XML轻便和可扩展的优点,但又不需要开发人员了解上述的相关技术。
在Java分布式应用中使用远程方法调用(RMI),而不是直接用底层的socket或其它网络链接代码。EJB技术也使开发人员从transaction,recovery, acti
阅读全文
摘要: 1. 建立开发环境,安装JDK5.0 Up,设置JAVA_HOME
下载EJB3 Container,本文采用Sun的GlassFish V2,glassfish-installer-v2ur1-b09d-windows.jar,
java -Xmx256m -jar glassfish-installer-v2ur1-b09d-windows.jar
cd glassfish
lib\ant\bin\ant -f setup.xml
阅读全文
摘要: EXTJS是一个兼容AJAX的前台WEB UI的框架,在普通的HTML文件的 BODY 元素中无须写任何HTML代码,就能产生相应的表格等元素。
阅读全文

/** *//**
* 启动一个流程实例。
*
* @param name
* 流程名称。
* @param version
* 版本号,默认取最新版本。
* @param formID
* 与业务相关的表单编号,可选字段。 该参数的含义为:业务系统可以在填写完表单信息后,将表单实例的ID作为流程实例变量
* 保存到工作流系统中,通过该ID可以在业务系统中查找表单信息。当然,也可以将表单实 际信息按照字段进行留成实例变量赋值。
* @param actor
* 流程实例发起人。
* @return 实例ID号+任务实例ID(如果有),格式‘实例ID-任务实例ID’。
*/
public String startProcessInstance(String name, int version, String formID,
String actor);
jbpmContext = jbpmConfiguration.createJbpmContext();

try
{
ProcessDefinition def;

if (version == 0)
{
def = jbpmContext.getGraphSession()
.findLatestProcessDefinition(name);

} else
{
def = jbpmContext.getGraphSession().findProcessDefinition(name,
version);
}
ProcessInstance instance = new ProcessInstance(def);
TaskInstance taskInstance = instance.getTaskMgmtInstance().createStartTaskInstance();
if ((formID != null) && (!formID.equals("")))
instance.getContextInstance()
.setVariable(
name + "-" + version + "-" + instance.getId()
+ "-Form", formID);
jbpmContext.save(instance);
String rtn = String.valueOf(instance.getId());
//如果有启动任务

if (taskInstance != null)
{
taskInstance.setActorId(actor);
rtn += "-" + String.valueOf(taskInstance.getId());

}else
{
instance.getRootToken().signal();
}
return rtn;

} catch (Exception e)
{
e.printStackTrace();
log.error(e.getMessage());

} finally
{
jbpmContext.close();
}
return "";
}
