2013-10-25 2 views
4

좋은 아침 뮬 3.4 Datamapper를 사용하여 데이터베이스에 Excel 파일을지도합니다. 오라클 데이터베이스의 테이블에 Excel 파일 (xlsx)을 매핑하려고합니다. 이렇게하려면 Oracle DataSource와 모든 항목으로 JDBC Connector를 만들었지 만 DataMapper Wizard로 매핑을 만들면 커넥터에 항목이 없어서 만든 Connector를 선택할 수 없습니다 (출력 datamapper 마법사 라벨) 목록. 여기 내 문제의 스크린 샷은 아래]어떻게 <p></p> 나는 뮬 ESB에서 Datamapper 구성 요소에 큰 문제가, 모든 사람에게 ESB

Screenshot of the DataMapper Wizard

당신이 날 도울 수있는 이유는, 난 정말 이해가 안 돼요?

또한 질문이 있습니다. xls 파일에서 제공하는 MuleMessageID, xls 파일 이름 및 Oracle SYSDATE와 같은 다른 필드를 데이터베이스에 삽입해야합니다. 그것은 가능한가?

당신에게 가능한 한 많은 정보를 제공하기 위해, 나는

<?xml version="1.0" encoding="UTF-8"?> 

<mule xmlns:scripting="http://www.mulesoft.org/schema/mule/scripting" xmlns:smtp="http://www.mulesoft.org/schema/mule/smtp" xmlns:ftp="http://www.mulesoft.org/schema/mule/ee/ftp" xmlns:jdbc-ee="http://www.mulesoft.org/schema/mule/ee/jdbc" xmlns:data-mapper="http://www.mulesoft.org/schema/mule/ee/data-mapper" xmlns:tracking="http://www.mulesoft.org/schema/mule/ee/tracking" xmlns:quartz="http://www.mulesoft.org/schema/mule/quartz" xmlns:file="http://www.mulesoft.org/schema/mule/file" xmlns:https="http://www.mulesoft.org/schema/mule/https" xmlns:http="http://www.mulesoft.org/schema/mule/http" xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation" xmlns:spring="http://www.springframework.org/schema/beans" version="EE-3.4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mulesoft.org/schema/mule/ee/jdbc http://www.mulesoft.org/schema/mule/ee/jdbc/current/mule-jdbc-ee.xsd 
http://www.mulesoft.org/schema/mule/https http://www.mulesoft.org/schema/mule/https/current/mule-https.xsd 
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd 
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd 
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd 
http://www.mulesoft.org/schema/mule/file http://www.mulesoft.org/schema/mule/file/current/mule-file.xsd 
http://www.mulesoft.org/schema/mule/quartz http://www.mulesoft.org/schema/mule/quartz/current/mule-quartz.xsd 
http://www.mulesoft.org/schema/mule/ee/tracking http://www.mulesoft.org/schema/mule/ee/tracking/current/mule-tracking-ee.xsd 
http://www.mulesoft.org/schema/mule/ee/data-mapper http://www.mulesoft.org/schema/mule/ee/data-mapper/current/mule-data-mapper.xsd 
http://www.mulesoft.org/schema/mule/ee/ftp http://www.mulesoft.org/schema/mule/ee/ftp/current/mule-ftp-ee.xsd 
http://www.mulesoft.org/schema/mule/scripting http://www.mulesoft.org/schema/mule/scripting/current/mule-scripting.xsd 
http://www.mulesoft.org/schema/mule/smtp http://www.mulesoft.org/schema/mule/smtp/current/mule-smtp.xsd"> 
    <spring:beans> 
     <spring:bean id="SettingProperty" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" scope="singleton"> 
      <spring:property name="locations"> 
       <spring:list> 
        <spring:value>classpath:pilot.properties</spring:value> 
       </spring:list> 
      </spring:property> 
     </spring:bean> 
    </spring:beans> 

    <http:connector name="HTTPConnector" 
        cookieSpec="netscape" 
        doc:name="HTTP\HTTPS"> 
     <service-overrides messageFactory="it.aizoon.http.customHttpMultipart.MyHttpMultipartMuleMessageFactory"/>   
    </http:connector> 

    <file:endpoint path="${file.output}" name="XSLXFile" responseTimeout="10000" doc:name="File"/> 

    <jdbc-ee:oracle-data-source name="Oracle_Data_Source" user="${db.user}" password="${db.password}" url="${db.url}" doc:name="Oracle Data Source" transactionIsolation="UNSPECIFIED"/> 
    <jdbc-ee:connector name="JdbcConnector" dataSource-ref="Oracle_Data_Source" validateConnections="true" queryTimeout="-1" doc:name="Database" pollingFrequency="0"> 
     <jdbc-ee:query key="storedProc" value="CALL ${db.storedProc}" /> 
    </jdbc-ee:connector> 
    <data-mapper:config name="xls_to_db_grf" transformationGraphPath="xls_to_db.grf" doc:name="xls_to_db_grf"/> 

    <!-- Starting Flow Declaration --> 
    <flow name="zonal_imbalance_1.0Flow1" doc:name="zonal_imbalance_1.0Flow1"> 
     <http:inbound-endpoint 
      address="http://${conn.host}:${conn.port}/${conn.path}" 
      connector-ref="HTTPConnector" doc:name="HTTP" exchange-pattern="request-response"/> 
     <wildcard-filter pattern="*/${conn.path}*" caseSensitive="true" doc:name="Wildcard"/> 
     <file:outbound-endpoint responseTimeout="10000" doc:name="Store XSLX File" path="C:\Users\paride.letizia\MuleStudio\workspace_ee\zonal_imbalance_1.0\src\test\resources\outputFolder"/> 
     <data-mapper:transform doc:name="DataMapper"/> 
     <jdbc-ee:outbound-endpoint exchange-pattern="request-response" queryTimeout="-1" doc:name="ORACLE Database" queryKey="example" connector-ref="JdbcConnector"> 
      <jdbc-ee:query key="example" value="SELECT * FROM prova;"/> 
     </jdbc-ee:outbound-endpoint> 
</flow> 
</mule> 

사전에 매우 여러분 모두에게 대단히 감사합니다 내 노새 프로젝트를 게시합니다. 앞으로 연락 드리겠습니다.

+0

안녕하세요, 아무도, 제발 도와 줄 수? –

+0

어떻게 해결 했습니까? –

답변

1

왜 그들이 JDBC "커넥터"를 추가하기로 결정했는지 정확히 알지 못하지만 실제로 커넥터로 작동하지 않습니다. 커넥터는 특별한 API를 사용하여 비표준 서비스와의 연결을 설정하기위한 것이므로 Oracle DB와의 연결을 설정하려면 표준 방식을 따르십시오. 전송하고 전송을 통해 데이터를 수신하여 엔드 포인트와 같은

커넥터 기능 :

은 자세한 내용은 Anypoint 문서, "엔드 포인트 및 커넥터"라는 특히 단락을 참조하십시오. 그러나 종단점은 널리 사용되는 프로토콜 (예 : JDBC, FTP, HTTP, POP3 등)에 일반적이지만 각 커넥터는 Salesforce 또는 Twitter와 같은 특정 타사 API와의 연결을 최적화하기 위해 만들어졌습니다.

끝점은 표준 형식이나 프로토콜을 가진 외부 리소스에 연결하는 대부분의 경우 필요에 따라 제공됩니다. 예를 들어, Oracle 데이터베이스 또는 MS SQL 데이터베이스에 연결하는 경우, 데이터베이스는 표준 형식으로 데이터를 출력하기 때문에 데이터베이스 엔드 포인트를 사용할 수 있습니다. Oracle 또는 MS SQL 커넥터가 필요 없습니다. 마찬가지로 .csv 파일과 같이 특정 종류의 파일에 대한 커넥터가 필요하지 않습니다. 파일 끝점은 .csv를 포함한 모든 종류의 텍스트 파일 형식으로 데이터를 입력 및 출력하도록 구성 할 수 있으므로 csv 커넥터가 필요하지 않습니다.

관련 : Difference between Mule Connectors and Transports