`
wanbin021614
  • 浏览: 27618 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

在AquaLogic Data Service Platform中配置Excel作为数据源

阅读更多
AquaLogic Data Service Platform(即以前的BEA liquid Data for Weblogic)中可以方便的访问多种不同的数据源,为多种异构的数据源提供统一视图,可以经过Data Service控件的封闭后给Portal,Integration,JPF等程序提供良好的数据层服务。

  这些异构数据源包括:各种JDBC可以访问的数据库,Web Services,很多不同类型的文件,包括XML文件,CSV文件,还有普通java类提供的函数功能。

  现在在DSP中加载Excel支持包,可以直接访问Excel文件,将Excel文件中的数据以XmlObject的形式读出,供J2EE应用程序访问。

  下面一步步来讲解在DSP中配置Excel作为数据源的过程

基本原理

  在DSP中访问Excel是利用Weblogic Server提供的jcom功能来访问Excel文件的,其基本原理如下:

  在上面的示图中,我们看到,java应用程序是通过JCOM组件来访问Windows操作系统中的Com服务器,再由Com服务器作为桥梁来存取磁盘中的Excel文件。

  基于由上原理,在使用Excel作为数据源时有几点限制:

  • 安装DSP的Weblogic Server必须安装在windows操作系统上。
  • Excel文件必须存在本机中,即不能远程访问。
安装软件

  下载与安装Bea Weblogic Platform 8.1.5,AcquaLogic Data Service Platform 2.0.1,然后利用配置向导建立支持DSP的域。

建立Data Service

  在workshop中建立Data Service的步骤如下:

1.新建DSP应用程序

2.加入相关支持库:

  安装DSP后在<beahome>\weblogic81\samples\LiquidData\EvalGuide\ excel\lib文件夹中,有两个jar包,excel.jar和exceljf_xbean.jar。需要将这两个包导入应用程序的库中。

3.导入Java Functions

  在DSP工程下新建functions文件夹,导入文件:

<beahome>\weblogic81\samples\LiquidData\EvalGuide\excel_jcom.java.

*注:新建functions文件夹的目的是因为excel_jcom.java中使用package functions;

4.编译整个项目

  编译整个项目的目的是将excel_jcom.java生成class文件。

5.导入元数据

  在functions文件夹上点键,选“import Source MetaData …”

  数据源类型选择:Java Function

下一步:

输入类名:

在选Java文件中,下一步,选中Java Functions:“getExcel”,加入到选中Functions列表中。

下一步

完成

数据源已经建好。

6.测试

打开测试视图

  输入两个参数,就getExcel的两个参数,第一个参数是文件名,第二个参数是sheet名,

  输入:x1: c:\BEA\weblogic81\samples\liquiddata\EvalGuide\excel\test.xls

x2:Customers (要区分大小)

执行测试,

测试成功。

7.编译发布数据源

  然后编译整个应用程序,发布Data Service

  发布成功可以在ldconsole里查看:

在BMP中测试Data Service

  Data Service发布后,就可以在其它java程序中直接使用了。其步骤如下:

4.1添加DataService控件

4.2 创建方法

4.3 控件生成

Data Service控件生成后就可以类似使用其它控件一样方便的使用了。

4.4 使用BMP测试

BMP流程如下:

部署应用程序,开始测试:

返回XML为:

<exc:excelxmlns:exc="http://www.bea.com/excel">
<cells>
<cellcellID="AAAA:0001">CustomerID</cell>
<cellcellID="AAAB:0001">Customername</cell>
<cellcellID="AAAC:0001">City</cell>
<cellcellID="AAAD:0001">SalesPeopleID</cell>
<cellcellID="AAAA:0002">2001.0</cell>
<cellcellID="AAAB:0002">Hoffman</cell>
<cellcellID="AAAC:0002">London</cell>
<cellcellID="AAAD:0002">1001.0</cell>
<cellcellID="AAAA:0003">2002.0</cell>
<cellcellID="AAAB:0003">Alex</cell>
<cellcellID="AAAC:0003">Rome</cell>
<cellcellID="AAAD:0003">1003.0</cell>
<cellcellID="AAAA:0004">2003.0</cell>
<cellcellID="AAAB:0004">Liu</cell>
<cellcellID="AAAC:0004">SanJose</cell>
<cellcellID="AAAD:0004">1002.0</cell>
<cellcellID="AAAA:0005">2004.0</cell>
<cellcellID="AAAB:0005">Grass</cell>
<cellcellID="AAAC:0005">Berlin</cell>
<cellcellID="AAAD:0005">1002.0</cell>
<cellcellID="AAAA:0006">2006.0</cell>
<cellcellID="AAAB:0006">Clements</cell>
<cellcellID="AAAC:0006">London</cell>
<cellcellID="AAAD:0006">1001.0</cell>
<cellcellID="AAAA:0007">2008.0</cell>
<cellcellID="AAAB:0007">Cisneros</cell>
<cellcellID="AAAC:0007">SanJose</cell>
<cellcellID="AAAD:0007">1007.0</cell>
<cellcellID="AAAA:0008">2007.0</cell>
<cellcellID="AAAB:0008">Pereira</cell>
<cellcellID="AAAC:0008">Rome</cell>
<cellcellID="AAAD:0008">1004.0</cell>
<cellcellID="AAAA:0009">14031.0</cell>
<cellcellID="AAAB:0009"/>
<cellcellID="AAAC:0009"/>
<cellcellID="AAAD:0009"/>
<cellcellID="AAAA:0010"/>
<cellcellID="AAAB:0010"/>
<cellcellID="AAAC:0010"/>
<cellcellID="AAAD:0010"/>
<cellcellID="AAAA:0011">Amountofcustomer</cell>
<cellcellID="AAAB:0011"/>
<cellcellID="AAAC:0011">7.0</cell>
<cellcellID="AAAD:0011"/>
<cellcellID="AAAA:0012">Minimumofrating</cell>
<cellcellID="AAAB:0012"/>
<cellcellID="AAAC:0012">1001.0</cell>
<cellcellID="AAAD:0012"/>
<cellcellID="AAAA:0013">Maximumofrating</cell>
<cellcellID="AAAB:0013"/>
<cellcellID="AAAC:0013">1007.0</cell>
<cellcellID="AAAD:0013"/>
<cellcellID="AAAA:0014">Averageofrating</cell>
<cellcellID="AAAB:0014"/>
<cellcellID="AAAC:0014">1002.8571428571429</cell>
<cellcellID="AAAD:0014"/>
<cellcellID="AAAA:0015"/>
<cellcellID="AAAB:0015"/>
<cellcellID="AAAC:0015"/>
<cellcellID="AAAD:0015"/>
</cells>
<rowrowID="0001"rowNumber="1">
<colcolumnID="AAAA"columnName="A">CustomerID</col>
<colcolumnID="AAAB"columnName="B">Customername</col>
<colcolumnID="AAAC"columnName="C">City</col>
<colcolumnID="AAAD"columnName="D">SalesPeopleID</col>
</row>
<rowrowID="0002"rowNumber="2">
<colcolumnID="AAAA"columnName="A">2001.0</col>
<colcolumnID="AAAB"columnName="B">Hoffman</col>
<colcolumnID="AAAC"columnName="C">London</col>
<colcolumnID="AAAD"columnName="D">1001.0</col>
</row>
<rowrowID="0003"rowNumber="3">
<colcolumnID="AAAA"columnName="A">2002.0</col>
<colcolumnID="AAAB"columnName="B">Alex</col>
<colcolumnID="AAAC"columnName="C">Rome</col>
<colcolumnID="AAAD"columnName="D">1003.0</col>
</row>
<rowrowID="0004"rowNumber="4">
<colcolumnID="AAAA"columnName="A">2003.0</col>
<colcolumnID="AAAB"columnName="B">Liu</col>
<colcolumnID="AAAC"columnName="C">SanJose</col>
<colcolumnID="AAAD"columnName="D">1002.0</col>
</row>
<rowrowID="0005"rowNumber="5">
<colcolumnID="AAAA"columnName="A">2004.0</col>
<colcolumnID="AAAB"columnName="B">Grass</col>
<colcolumnID="AAAC"columnName="C">Berlin</col>
<colcolumnID="AAAD"columnName="D">1002.0</col>
</row>
<rowrowID="0006"rowNumber="6">
<colcolumnID="AAAA"columnName="A">2006.0</col>
<colcolumnID="AAAB"columnName="B">Clements</col>
<colcolumnID="AAAC"columnName="C">London</col>
<colcolumnID="AAAD"columnName="D">1001.0</col>
</row>
<rowrowID="0007"rowNumber="7">
<colcolumnID="AAAA"columnName="A">2008.0</col>
<colcolumnID="AAAB"columnName="B">Cisneros</col>
<colcolumnID="AAAC"columnName="C">SanJose</col>
<colcolumnID="AAAD"columnName="D">1007.0</col>
</row>
<rowrowID="0008"rowNumber="8">
<colcolumnID="AAAA"columnName="A">2007.0</col>
<colcolumnID="AAAB"columnName="B">Pereira</col>
<colcolumnID="AAAC"columnName="C">Rome</col>
<colcolumnID="AAAD"columnName="D">1004.0</col>
</row>
<rowrowID="0009"rowNumber="9">
<colcolumnID="AAAA"columnName="A">14031.0</col>
<colcolumnID="AAAB"columnName="B"/>
<colcolumnID="AAAC"columnName="C"/>
<colcolumnID="AAAD"columnName="D"/>
</row>
<rowrowID="0010"rowNumber="10">
<colcolumnID="AAAA"columnName="A"/>
<colcolumnID="AAAB"columnNam
分享到:
评论

相关推荐

    BEA AQUALOGIC DATA SERVICES PLATFORM技术注解

    BEA AquaLogic Data Services Platform提供了一个功能丰富的安全性框架,它使数据服务架构师能够在一个地方捕获并管理安全性策略。本技术注解简要描述了BEA AquaLogic Data Services Platform所提供的安全特性、这些...

    Aqualogic service

    其次,BEA AquaLogic Data Services Platform(ALDSP)专注于数据服务的创建、管理和部署,使得企业能够以服务的形式暴露其数据库和其他数据源,从而促进数据的重用和集成。这一平台简化了数据访问的复杂性,同时...

    AquaLogic Service Bus

    BEA AquaLogic Service Bus:trade_mark: 是一种用作分布式服务网络核心元素的中介。 它支持面向服务的体系结构(service-oriented architecture,简称 SOA),允许重复使用和部署提升的服务。

    跨平台的SOA实施工具BEA AquaLogic

    **BEA AquaLogic Service Bus**:作为一个集成平台,它融合了Enterprise Service Bus(ESB)的功能和服务管理,简化了异构环境中的SOA管理,加速服务部署,降低成本,确保服务的正常运行和可用性,同时也通过服务元...

    aqualogic service bus soa

    ### 关于《AquaLogic Service Bus SOA》的知识点概览 #### 一、书籍基本信息与作者介绍 - **书名**:《SOA:BEA AquaLogic Service Bus 定义指南》 - **作者**:Jeff Davies(主笔),Ashish Krishna 和 David ...

    SOA权威指南:通过BEA AquaLogic Service Bus实现

    通过AquaLogic Service Bus,企业能够实现服务之间的异步通信,处理复杂的事务流程,以及在不同的技术栈之间进行数据格式转换,从而确保服务的互操作性和可用性。 ### 本书主要内容 《SOA权威指南:通过BEA ...

    使用BEA AquaLogic BPM Suite

    BEA AquaLogic Business Service Interaction (ALBSI)产品线是一组集成的产品和工与应用程序关联,实现业务流程整个生命周期的自动化、执行和监控。收购Fuego后,(ALBPM)成为了ALBSI产品线的一部分。BEA AquaLogic...

    AquaLogic BPM Process API Developer Guide

    1. **启用Web服务**:在AquaLogic BPM Studio或Enterprise环境中启用PAPI Web Service。 2. **安装在J2EE应用服务器上**:如果需要,可以在J2EE应用服务器上安装PAPI Web Service。 3. **配置安全认证**:根据具体...

    Integrating Data & Services

    随着企业信息化的深入发展,数据源日益多样化,包括但不限于关系型数据库、非关系型数据库、包装配置应用、自定义应用以及各种类型的文件等。这些数据分布在不同的系统和平台中,形成了所谓的“数据孤岛”。集成数据...

    SOA权威指南通过BEA AquaLogic Service Bus实现

    它提供了一种在分布式环境中交换消息的标准方式,并支持多种传输协议和服务发现机制。服务总线通常包括路由、转换、协议适配等功能,从而简化了不同服务之间的集成过程。 #### 二、BEA AquaLogic Service Bus(ALSB...

    SOA的权威指南:BEA AquaLogic 服务总线

    作者分享了许多关于SOA技术和BEA AquaLogic Service Bus的实际应用案例,包括技术细节、配置技巧和最佳实践。这些内容对于希望深入理解SOA原理及其在现实世界中应用的读者来说,具有极高的参考价值。例如,书中介绍...

    AquaLogic User Interaction开发入门

    1. **AquaLogic Interaction (ALI)**:作为ALUI的门户组件,ALI为应用程序提供框架,将各种AquaLogic组件集成到一个基于Web的紧密环境中。它提供了一个面向服务的架构,使得快速部署、标准化外观、管理功能以及用户...

    AquaLogic Enterprise Security产品要点

    AquaLogic Enterprise Security(ALES)产品是BEA AquaLogic平台的一部分,用于对企业应用实施细粒度安全性策略。它提供了一个集中式的管理控制台来管理资源和安全性策略,并将其分布到需要实施安全性策略的适当的应用...

    BEA_AquaLogic无期限开发许可

    1. **服务总线(Service Bus)**:作为SOA基础设施的关键部分,BEA AquaLogic服务总线负责路由、转换和管理服务间的交互。它提供了一种灵活的方式来连接和集成不同的系统,使得企业能够构建松耦合的架构。 2. **...

    DSP部署不成功的解决办法

    你可以选择删除当前的域配置,然后从头开始创建一个新的域,确保在配置过程中选中"AquaLogic Data Services Platform"选项。这样可以确保域创建时就包含了支持DSP服务所需的全部组件和权限设置。 2. **检查安全策略...

    SOA例子

    2. **数据服务**:展示如何使用AquaLogic Data Services Platform创建和管理数据服务,以实现数据的集中管理和访问。 3. **消息传递服务**:讲解如何利用BEA MessageQ等消息中间件进行异步通信,提高系统响应性和可...

    SOA权威指南通过BEA AquaLogic Service Bus实现 源码 第二部分

    基于服务总线SOA正在成为新一代企业IT架构的主流形式,具有非常重大的意义。本书对BEA先进的ALSB产品进行了深刻而清晰的剖析,是国内第一本具体阐述ESB的高水平的著作。每一个企业应用架构师和开发者都能从中学到...

    SOA权威指南通过BEA AquaLogic Service Bus实现 源码 第一部分

    基于服务总线SOA正在成为新一代企业IT架构的主流形式,具有非常重大的意义。本书对BEA先进的ALSB产品进行了深刻而清晰的剖析,是国内第一本具体阐述ESB的高水平的著作。每一个企业应用架构师和开发者都能从中学到...

    解读BEA的SCA规范

    对于BEA来说,SCA是其AquaLogic Data Services Platform(ALDSP)的重要组成部分,该平台自3.0版开始引入SCA技术,致力于构建面向SOA的企业数据服务。BEA Workshop也计划支持SCA,提供免费下载,以便开发者能够更...

Global site tag (gtag.js) - Google Analytics