Filenet详解(filenet)

一、Filenet介绍

Filenet是一个开发企业级文档管理系统的平台,提供了一系列基于网络的开发工具和API。它可以让企业更好地管理中心化的文件信息和相关的开发需求,包括文件存储,检索,流程控制等功能。

作为一个开发者,在使用Filenet的平台的时候,我们需要先理清楚元素和组件,才能更好地理解API和底层指令的使用,从而达到更高效的开发。

二、Filenet的元素

Filenet的元素指的是Filenet中最基本的组件。在Filenet中,有五个基本的元素:对象类,属性,关系,版本和文件。其中,对象类是表示目录和其他内容的对象类型;属性则是对象定义的特征,包括元数据和一些其他的信息;关系则是运用于对象之间的连接类型;版本指的是可以对对象的内容进行更新的版本机制;文件则是指的文件本身,包含了它的名字、位置、类型和内容等信息。

三、Filenet的组件

Filenet主要通过各种组件来提供丰富的功能和API。其中,最重要的组件有以下几个部分:

1. Object Store

Object Store指的是Filenet中的一个存储空间,用来存储Filenet中的所有元素。它是所有Filenet应用程序的基础,包括了元数据和二进制的文件数据。它也是Filenet中的最高层次的架构,也是整个平台的核心组件。在Filenet中,不同的业务可以使用不同的Object Store,在同一个Filenet平台下进行开发。

2. Process Engine

Process Engine指的是Filenet中的工作流引擎。它可以实现业务流程的建模和控制,并能够快速定义和实现各种工作流程。Process Engine最大的特点是支持自定义活动,这意味着我们可以将自己的Java代码直接嵌入到Filenet工作流中,以实现更高级别的工作流需求。

3. Workplace

Workplace是Filenet的经典客户端组件,也是Filenet的操作界面。它提供了一个基于Web的用户界面,用于浏览Filenet中的内容。Workplace支持配置自定义的检索和查询,并能够自由地控制对象的检索和属性的编辑。

4. Content Engine

Content Engine指的是Filenet中最核心的内容引擎。它处理所有与Filenet元素相关的存储、检索和管理操作,同时还提供了丰富的RESTful API,用于开发自己的Filenet应用程序。Content Engine可以查询和检索Object Store中的Filenet元素,并可以对这些元素进行修改和删除等操作。

5. Workplace XT

Workplace XT是Filenet的最新版本,它提供了更加高效的用户界面和更加强大的功能。Workplace XT支持各种类型的属性编辑,同时还支持多个Object Store之间的查询和检索。它还提供了一个弹性的计划表格组件,可用于定制应用的工作流程和数据表单。

四、Filenet的Java API开发

在Filenet中,我们可以使用各种J2EE和RESTful API进行开发,包括Java API、SOAP API和Web Services等。其中,Java API是最常用的一种API,也是Filenet开发中的重要基础。现在,我们通过一个具体的代码示例来演示如何使用Filenet的Java API进行开发。

import java.util.*;
import javax.security.auth.Subject;
import com.ibm.websphere.security.Authenticate;
import com.filenet.api.constants.ClassNames;
import com.filenet.api.constants.RefreshMode;
import com.filenet.api.core.*;
import com.filenet.api.util.UserContext;

public class FilenetJavaAPIDemo {
	public static void main(String[] args) {
		// Credentials
		String username = "P8admin";
		String password = "password";
		String jaasStanzaName = "FileNetP8WSI";

		// Connection
		Connection conn = Factory.Connection.getConnection("http://server:port/wsi/FNCEWS40MTOM"); 

		// User Context
		Subject subject = UserContext.createSubject(conn, username, password, jaasStanzaName);
		UserContext.get().pushSubject(subject);

		// Object Store
		Domain domain = Factory.Domain.getInstance(conn, null);
		ObjectStore os = Factory.ObjectStore.fetchInstance(domain, "TestOS", null);

		// Object Search
		SearchSQL sql = new SearchSQL();
		sql.setQueryString("SELECT * FROM Document WHERE DocumentTitle = 'test'");
		SearchScope scope = new SearchScope(os);
		IndependentObjectSet objSet = scope.fetchObjects(sql, null, null, new Boolean(true));

		Iterator it = objs.iterator();

		while(it.hasNext()) {
			Document doc = (Document) it.next();
			System.out.println("Document Title : " + doc.getProperties().getStringValue("DocumentTitle"));
			System.out.println("Last Modifier : " + doc.get_LastModifier());
		}

		// Logout
		UserContext.get().popSubject();
	}
}

在这个代码示例中,我们使用Filenet的Java API来进行开发,首先需要建立连接并授权,然后根据Object Store来查询我们需要的元素,最后根据返回的元素列表进行相应的后续操作。

以上是对于Filenet的一个简单的介绍,这里介绍了Filenet的基本元素、核心组件和使用Java API进行开发的示例。结合Filenet的完整开发文档,我们可以更加详细地了解和掌握Filenet的各种功能和API,从而更好地用于企业级应用程序的开发。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注