wso2 - 来自 wso2 esb 中自定义 java 中介的 XSSF/xlsx 文件

标签 wso2 apache-poi xlsx xssf wso2-esb

所以我尝试创建一个 xlsx 文件(需要 xlsx,因为它超过 70,000 行)并且当我部署到 wso2 esb 时我不断收到以下错误但是当我运行测试时(在 netbeans 和 mvn 构建期间)过程)它完美地工作。我专门使用 SXSSF,但问题来自 XSSF,因为当我尝试不使用流媒体时也会出现这种情况。

请帮助我在 esb 中运行它,我通常通过 .car 文件进行部署。

我使用 ESB 4.8.1 只是为了说明

错误:

TID[-1234] [ESB] [2014-10-10 19:11:43,968] ERROR 
{org.apache.axis2.transport.base.threads.NativeWorkerPool} - Uncaught exception 
org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorkbook$Factory.newInstance(Unknown 
Source) org.apache.poi.xssf.usermodel.XSSFWorkbook.onWorkbookCreate(XSSFWorkbook.java:307) 
org.apache.poi.xssf.usermodel.XSSFWorkbook.(XSSFWorkbook.java:167) 
org.apache.poi.xssf.streaming.SXSSFWorkbook.(SXSSFWorkbook.java:172) 
org.apache.poi.xssf.streaming.SXSSFWorkbook.(SXSSFWorkbook.java:143) 
org.apache.poi.xssf.streaming.SXSSFWorkbook.(SXSSFWorkbook.java:205) 
com.circleblack.mediator.data.PerformanceExtract.mediate(PerformanceExtract.java:30) 
org.apache.synapse.mediators.ext.ClassMediator.mediate(ClassMediator.java:78) 
org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:77) 
org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47) 
org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131) 
org.apache.synapse.rest.Resource.process(Resource.java:297) 
org.apache.synapse.rest.API.process(API.java:341) 
org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:76) 
org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:63) 
org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:220) 
org.apache.synapse.core.axis2.SynapseMessageReceiver.receive(SynapseMessageReceiver.java:83) 
org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) 

org.apache.synapse.transport.passthru.ServerWorker.processNonEntityEnclosingRESTHandler(ServerWorker.java:344) 
org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:168) 
org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
java.lang.Thread.run(Thread.java:745) 

任务:

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<modelVersion>4.0.0</modelVersion>

<parent>
    <groupId>com.circleblack.mediator</groupId>
    <artifactId>cb-esb-mediator</artifactId>
    <version>1.0.0-SNAPSHOT</version>
</parent>

<artifactId>cb-esb-mediator-data</artifactId>
<packaging>bundle</packaging>

<description>Mediators for processing data.</description>

<properties>
    <CApp.type>lib/synapse/mediator</CApp.type>
</properties>

<dependencies>
    <dependency>
        <groupId>org.apache.synapse</groupId>
        <artifactId>synapse-core</artifactId>
    </dependency>
    <dependency>
        <groupId>org.apache.axis2.wso2</groupId>
        <artifactId>axis2</artifactId>
    </dependency>
    <dependency>
        <groupId>org.apache.ws.commons.axiom.wso2</groupId>
        <artifactId>axiom</artifactId>
    </dependency>
    <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>2.3</version>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi</artifactId>
        <version>3.10.1</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>3.10.1</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml-schemas</artifactId>
        <version>3.10.1</version>
        <scope>compile</scope>
    </dependency>

    <!-- Tests -->
    <dependency>
        <groupId>com.circleblack.mediator</groupId>
        <artifactId>cb-esb-mediator-test-mockito</artifactId>
        <version>${project.version}</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.xmlbeans</groupId>
        <artifactId>xmlbeans</artifactId>
        <version>2.6.0</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.poi.wso2</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>3.9.0.wso2v2</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>ooxml-schemas</artifactId>
        <version>1.1</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>stax</groupId>
        <artifactId>stax-api</artifactId>
        <version>1.0.1</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>dom4j</groupId>
        <artifactId>dom4j</artifactId>
        <version>1.6.1</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
        <type>zip</type>
        <scope>compile</scope>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-bundle-plugin</artifactId>
            <configuration>
                <instructions>
                    <Bundle-SymbolicName>cb-esb-mediator-data</Bundle-SymbolicName>
                    <Bundle-Name>cb-esb-mediator-data</Bundle-Name>
                    <Export-Package>com.circleblack.mediator.data</Export-Package>
                    <DynamicImport-Package>*</DynamicImport-Package>
                </instructions>
            </configuration>
        </plugin>
    </plugins>
</build>
</project>

java文件

package com.circleblack.mediator.data;

import java.io.FileNotFoundException;

import org.apache.axiom.om.OMElement;
import org.apache.synapse.MessageContext;
import org.apache.synapse.mediators.AbstractMediator;

import java.util.Date;

import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Iterator;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;

public class PerformanceExtract extends AbstractMediator {

  @Override
  public boolean mediate(MessageContext context) {
    System.out.println("Performance Extract Started perfExtact:");
    OMElement performanceExportElement = (OMElement) context.getProperty("performanceExtract");
    System.out.println("Performance Extract perfFile:");
    String performanceExportElementFile = (String) context.getProperty("performanceExtractFile");
    System.out.println(performanceExportElementFile);
    System.out.println("Performance Extract Data Gathered!");
    SXSSFWorkbook wb = new SXSSFWorkbook(100);

    for (Iterator<?> i = performanceExportElement.getChildElements(); i.hasNext();) {
      OMElement sheetElm = (OMElement) i.next();
      //Setup Sheet
      Sheet sheet = wb.createSheet(sheetElm.getLocalName());
      //Setup headers
      OMElement RowHeaders=sheetElm.getFirstElement();
      if(RowHeaders!=null){
        Row row = sheet.createRow(sheet.getLastRowNum());
        int columnNum=0;
        for (Iterator<?> q = RowHeaders.getChildElements(); q.hasNext();) {
          OMElement RowHeader = (OMElement) q.next();
          row.createCell(columnNum).setCellValue(RowHeader.getLocalName());
          columnNum++;
        }
        //Setup Data
        for (Iterator<?> z = sheetElm.getChildElements(); z.hasNext();) {
          OMElement rowElm = (OMElement) z.next();
          row = sheet.createRow(sheet.getLastRowNum()+1);
          columnNum=0;
          for (Iterator<?> q = rowElm.getChildElements(); q.hasNext();) {
            OMElement cellElm = (OMElement) q.next();
            row.createCell(columnNum).setCellValue(cellElm.getText());
            columnNum++;
          }
        }
      }
    }

    try {
      //FileOutputStream fileOut = new        FileOutputStream("/CBdrive/extracts/"+performanceExportElementFile);
      FileOutputStream fileOut = new FileOutputStream("C:\\"+performanceExportElementFile);
  wb.write(fileOut);
  fileOut.close();
    } catch (FileNotFoundException ex) {
      Logger.getLogger(PerformanceExtract.class.getName()).log(Level.SEVERE,     "FileNotFoundException", ex);
    } catch (IOException ex) {
      Logger.getLogger(PerformanceExtract.class.getName()).log(Level.SEVERE, "IOException", ex);
    }
    wb.dispose();
    return true;
  }
}

编辑: 更详细的错误信息:

[2014-10-12 19:56:34,235] ERROR - NativeWorkerPool Uncaught exception java.lang.ExceptionInInitializerError 
at org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorkbook$Factory.newInstance(Unknown Source)       at org.apache.poi.xssf.usermodel.XSSFWorkbook.onWorkbookCreate(XSSFWorkbook.java:307)
    at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:167)
    at org.apache.poi.xssf.streaming.SXSSFWorkbook.<init>(SXSSFWorkbook.java:172)
    at org.apache.poi.xssf.streaming.SXSSFWorkbook.<init>(SXSSFWorkbook.java:143)
    at org.apache.poi.xssf.streaming.SXSSFWorkbook.<init>(SXSSFWorkbook.java:205)
    at com.circleblack.mediator.data.PerformanceExtract.mediate(PerformanceExtract.java:30)
    at org.apache.synapse.mediators.ext.ClassMediator.mediate(ClassMediator.java:78)
    at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:77)
    at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47)
    at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131)
    at org.apache.synapse.rest.Resource.process(Resource.java:297)
    at org.apache.synapse.rest.API.process(API.java:341)
    at org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:76)
    at org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:63)
    at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:220)
    at org.apache.synapse.core.axis2.SynapseMessageReceiver.receive(SynapseMessageReceiver.java:83)
    at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
    at org.apache.synapse.transport.passthru.ServerWorker.processNonEntityEnclosingRESTHandler(ServerWorker.java:344)
    at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:168)
    at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)Caused by: java.lang.RuntimeException: Cannot load SchemaTypeSystem. Unable to load class with name schemaorg_apache_xmlbeans.system.sE130CAA0A01A7CDE5A2B4FEB8B311707.TypeSystemHolder. Make sure the generated binary files are on the classpath.
    at org.apache.xmlbeans.XmlBeans.typeSystemForClassLoader(XmlBeans.java:783)
    at org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorkbook.<clinit>(Unknown Source)
    ... 24 more

Caused by: java.lang.ClassNotFoundException: schemaorg_apache_xmlbeans.system.sE130CAA0A01A7CDE5A2B4FEB8B311707.TypeSystemHolder
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    at org.apache.xmlbeans.XmlBeans.typeSystemForClassLoader(XmlBeans.java:769)
    ... 25 more

下面是我的父 pom:

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<modelVersion>4.0.0</modelVersion>

<parent>
    <groupId>com.circleblack</groupId>
    <artifactId>cb-wso2</artifactId>
    <version>1.0.0-SNAPSHOT</version>
</parent>

<groupId>com.circleblack.mediator</groupId>
<artifactId>cb-esb-mediator</artifactId>
<packaging>pom</packaging>

<description>Custom mediators for ESB.</description>

<modules>
    <module>cb-esb-mediator-data</module>
    <module>cb-esb-mediator-rest</module>
    <module>cb-esb-mediator-security</module>

    <module>cb-esb-mediator-test-mockito</module>
</modules>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

    <synapse.version>2.1.2-wso2v2</synapse.version>

    <axis2.version>1.6.1.wso2v10</axis2.version>
    <axiom.version>1.2.11.wso2v4</axiom.version>

    <httpcomponents.version>4.1.0-wso2v1</httpcomponents.version>
    <httpclient.version>3.1.0.wso2v2</httpclient.version>

    <junit.version>4.11</junit.version>
    <mockito.version>1.9.5</mockito.version>
</properties>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.apache.synapse</groupId>
            <artifactId>synapse-core</artifactId>
            <version>${synapse.version}</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.axis2.wso2</groupId>
            <artifactId>axis2</artifactId>
            <version>${axis2.version}</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.ws.commons.axiom.wso2</groupId>
            <artifactId>axiom</artifactId>
            <version>${axiom.version}</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.httpcomponents.wso2</groupId>
            <artifactId>httpcore</artifactId>
            <version>${httpcomponents.version}</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>commons-httpclient.wso2</groupId>
            <artifactId>commons-httpclient</artifactId>
            <version>${httpclient.version}</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>${junit.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-all</artifactId>
            <version>${mockito.version}</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<build>
    <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.16</version>
            </plugin>
            <plugin>
                <groupId>org.apache.felix</groupId>
                <artifactId>maven-bundle-plugin</artifactId>
                <version>2.3.4</version>
                <extensions>true</extensions>
            </plugin>
        </plugins>
    </pluginManagement>

    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
        </plugin>
    </plugins>
</build>

</project>

我的顶级 wso2 pom

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<modelVersion>4.0.0</modelVersion>

<groupId>com.circleblack</groupId>
<artifactId>cb-wso2</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>pom</packaging>

<modules>
    <module>cb-ds</module>
    <module>cb-esb</module>
    <module>cb-esb-mediator</module>
    <module>cb-capp</module>
</modules>

<repositories>
    <repository>
        <releases>
            <updatePolicy>daily</updatePolicy>
            <checksumPolicy>ignore</checksumPolicy>
        </releases>
        <id>wso2-nexus</id>
        <url>http://maven.wso2.org/nexus/content/groups/wso2-public/</url>
    </repository>
</repositories>
<pluginRepositories>
    <pluginRepository>
        <releases>
            <updatePolicy>daily</updatePolicy>
            <checksumPolicy>ignore</checksumPolicy>
        </releases>
        <id>wso2-nexus</id>
        <url>http://maven.wso2.org/nexus/content/groups/wso2-public/</url>
    </pluginRepository>
</pluginRepositories>

<properties>
    <wso2.plugin>2.0.4</wso2.plugin>
    <artifact.types>service/rule=aar,lib/library/bundle=jar,synapse/message-processors=xml,synapse/proxy-service=xml,synapse/message-store=xml,carbon/application=car,registry/resource=zip,synapse/endpoint=xml,lib/dataservice/validator=jar,web/application=war,synapse/sequence=xml,synapse/configuration=xml,lib/registry/handlers=jar,synapse/task=xml,webapp/jaxws=war,synapse/api=xml,cep/bucket=xml,bpel/workflow=zip,lib/registry/filter=jar,service/dataservice=dbs,synapse/local-entry=xml,synapse/priority-executor=xml,synapse/template=xml,synapse/event-source=xml,lib/carbon/ui=jar,service/axis2=aar,wso2/gadget=dar,lib/synapse/mediator=jar</artifact.types>
    </properties>

</project>

我是否需要在中介 pom 之外的某个地方专门包含依赖项?我还将它们包含在主要的碳应用程序 pom 中,但它似乎没有什么不同。

最佳答案

使用 ESB 4.8.1,类

schemaorg_apache_xmlbeans.system.sE130CAA0A01A7CDE5A2B4FEB8B311707.TypeSystemHolder

可以在 ESB_HOME/repository/components/plugins/poi_ooxml_3.9.0.wso2v1 中找到

我没有你的父 POM,所以我更新了你的 POM(见下文)来打包你的类调解器并尝试使用 ESB (4.8.1),我没有任何错误,我可以看

Performance Extract Started perfExtact:
Performance Extract perfFile:
mytest.txt
Performance Extract Data Gathered!

在标准输出中

注意:对于 ESB 4.9.0(SNAPSHOT),我遇到了与您相同的错误,需要在 repository/components/lib 中添加 poi-ooxml-3.9.0.wso2v1.jar:它是这样工作的,但是我不知道这是否是个好主意,因为默认情况下,您可以在 repository/components/plugins 中找到 poi-ooxml_3.9.0.wso2v2.jar

POM:

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<modelVersion>4.0.0</modelVersion>
<groupId>com.circleblack.mediator</groupId>
<artifactId>cb-esb-mediator-data</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>bundle</packaging>

<description>Mediators for processing data.</description>

<properties>
    <CApp.type>lib/synapse/mediator</CApp.type>
</properties>

    <repositories>
        <repository>
            <id>wso2-maven2-repository</id>
            <url>http://dist.wso2.org/maven2</url>
        </repository>
        <repository>
            <id>apache-Incubating-repo</id>
            <name>Maven Incubating Repository</name>
            <url>http://people.apache.org/repo/m2-incubating-repository</url>
        </repository>
        <repository>
            <id>apache-maven2-repo</id>
            <name>Apache Maven2 Repository</name>
            <url>http://repo1.maven.org/maven2/</url>
        </repository>
    </repositories>

<dependencies>
    <dependency>
        <groupId>org.apache.synapse</groupId>
        <artifactId>synapse-core</artifactId>
        <version>2.1.2-wso2v1</version>
    </dependency>
    <dependency>
        <groupId>org.apache.axis2.wso2</groupId>
        <artifactId>axis2</artifactId>
        <version>1.6.1.wso2v10</version>
    </dependency>
    <dependency>
        <groupId>org.apache.ws.commons.axiom.wso2</groupId>
        <artifactId>axiom</artifactId>
        <version>1.2.11.wso2v4</version>
    </dependency>
    <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>2.3</version>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi</artifactId>
        <version>3.10.1</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>3.10.1</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml-schemas</artifactId>
        <version>3.10.1</version>
        <scope>compile</scope>
    </dependency>

    <!-- Tests -->
    <!--dependency>
        <groupId>com.circleblack.mediator</groupId>
        <artifactId>cb-esb-mediator-test-mockito</artifactId>
        <version>${project.version}</version>
        <scope>test</scope>
    </dependency-->
    <dependency>
        <groupId>org.apache.xmlbeans</groupId>
        <artifactId>xmlbeans</artifactId>
        <version>2.6.0</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.poi.wso2</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>3.9.0.wso2v2</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>ooxml-schemas</artifactId>
        <version>1.1</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>stax</groupId>
        <artifactId>stax-api</artifactId>
        <version>1.0.1</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>dom4j</groupId>
        <artifactId>dom4j</artifactId>
        <version>1.6.1</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
        <type>zip</type>
        <scope>compile</scope>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-bundle-plugin</artifactId>
            <version>1.4.0</version>
            <extensions>true</extensions>
            <configuration>
                <instructions>
                    <Bundle-SymbolicName>cb-esb-mediator-data</Bundle-SymbolicName>
                    <Bundle-Name>cb-esb-mediator-data</Bundle-Name>
                    <Export-Package>com.circleblack.mediator.data.*</Export-Package>
                    <DynamicImport-Package>*</DynamicImport-Package>
                </instructions>
            </configuration>
        </plugin>
    </plugins>
</build>
</project>

关于wso2 - 来自 wso2 esb 中自定义 java 中介的 XSSF/xlsx 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26305864/

相关文章:

java - Apache POI 设置 Excel 图表标题

java - 使用 java 无法在 Word 文档中获取页数

java - 有没有可以与java集成的语言可以有效地读取大型XLSX文件?

WSO2 ESB "Send"中介没有发送到代理的输出序列

WSO2 APIM 如何更改 key 管理器以试用控制台

java - 如何使用 apache poi 将背景图像设置为居中

php - 将变量插入 MySQL DB 表

wso2 - 如何启动wso2微积分器7.0.1?

jakarta-ee - WSO2 ESB 中入站端点的含义和用途是什么?

java - 使用 Apache POI 读取 Excel .XLSX 时出错