다음을 통해 공유


Oracle E-Business Suite에 대한 클라이언트 바인딩 구성

WCF 클라이언트 클래스를 생성한 후에는 WCF 클라이언트(instance)를 만들고 해당 메서드를 호출하여 Oracle E-Business 어댑터를 사용할 수 있습니다.

WCF 클라이언트를 만들려면 엔드포인트 주소와 바인딩을 지정해야 합니다. 엔드포인트 주소는 유효한 Oracle E-Business Suite 연결 URI를 포함해야 하며 바인딩은 Oracle E-Business Suite 바인딩(OracleEBSBinding)의 instance 합니다. Oracle E-Business Suite 연결 URI에 대한 자세한 내용은 Oracle E-Business Suite에 대한 연결 만들기를 참조하세요. 연결 URI의 일부로 사용자 자격 증명을 지정하지 않는 것이 좋습니다. 대신 이 항목에 설명된 대로 WCF 클라이언트의 ClientCredentials 속성을 사용할 수 있습니다.

코드 또는 구성 파일에서 Oracle E-Business Suite 바인딩 및 엔드포인트 주소를 지정할 수 있습니다. 어댑터 서비스 참조 Visual Studio 플러그 인 추가를 사용하여 WCF 클라이언트 클래스를 생성하는 경우 프로젝트에 대한 구성 파일(app.config)도 만들어집니다. 이 파일에는 어댑터 서비스 참조 플러그 인 추가를 사용하여 Oracle E-Business Suite에 연결할 때 지정한 바인딩 속성 및 연결 정보(자격 증명 제외)를 반영하는 구성 설정이 포함되어 있습니다.

코드에서 바인딩 및 엔드포인트 주소 지정

다음 코드에서는 WCF 클라이언트의 ClientCredentials 속성을 사용하여 코드에서 바인딩 및 엔드포인트 주소를 지정하여 WCF 클라이언트를 만드는 방법을 보여 줍니다.

//Create an Oracle EBS binding and set the binding properties  
OracleEBSBinding binding = new OracleEBSBinding();  
binding.OracleUserName = "myOracleEBSUser";  
binding.OraclePassword = "myOracleEBSPassword";  
binding.OracleEBSResponsibilityName = "Responsibility";  
binding.OracleEBSOrganizationId = "204";  
  
//Create the client endpoint   
EndpointAddress address = new EndpointAddress("oracleebs://<oracleebs_instance_name>/");  
  
//Create the client and specify the credentials  
ConcurrentPrograms_ARClient client = new ConcurrentPrograms_ARClient(binding,address);  
client.ClientCredentials.UserName.UserName = "myuser";  
client.ClientCredentials.UserName.Password = "mypassword";  
  
//Open the client  
client.Open();  

구성 파일에서 바인딩 및 엔드포인트 주소 지정

다음 코드에서는 app.config 파일에서 바인딩 및 엔드포인트 주소를 지정하여 WCF 클라이언트를 만드는 방법을 보여 있습니다.

//Create the client by specifying the endpoint name in the app.config. In this case, the binding properties  
//must also be specified in the app.config.  
ConcurrentPrograms_ARClient client = new ConcurrentPrograms_ARClient("OracleEBSBinding_ConcurrentPrograms_AR");  
  
//Specify the credentials   
client.ClientCredentials.UserName.UserName = "myuser";  
client.ClientCredentials.UserName.Password = "mypassword";  
  
client.Open();  

다음 XML은 어댑터 서비스 참조 추가 플러그 인에서 고객 인터페이스 동시 프로그램에 대해 만든 구성 파일을 보여 냅니다. 이 파일에는 이전 예제에서 참조된 클라이언트 엔드포인트 구성이 포함되어 있습니다.

<?xml version="1.0" encoding="utf-8"?>  
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">  
    <system.serviceModel>  
        <bindings>  
            <oracleEBSBinding>  
                <binding openTimeout="00:05:00" name="OracleEBSBinding" closeTimeout="00:01:00"  
                    receiveTimeout="00:10:00" sendTimeout="00:01:00" clientCredentialType="Database"  
                    inboundOperationType="Polling" metadataPooling="true" statementCachePurge="false"  
                    statementCacheSize="10" pollWhileDataFound="false" pollingInterval="30"  
                    useOracleConnectionPool="true" minPoolSize="1" maxPoolSize="100"  
                    incrPoolSize="5" decrPoolSize="1" connectionLifetime="0" acceptCredentialsInUri="false"  
                    useAmbientTransaction="true" notifyOnListenerStart="true"  
                    notificationPort="-1" dataFetchSize="65536" longDatatypeColumnSize="32512"  
                    skipNilNodes="true" maxOutputAssociativeArrayElements="32"  
                    enableSafeTyping="false" insertBatchSize="20" useSchemaInNameSpace="true"  
                    enableBizTalkCompatibilityMode="true">  
                    <mlsSettings language="" dateFormat="" dateLanguage="" numericCharacters=""  
                        sort="" territory="" comparison="" currency="" dualCurrency=""  
                        iSOCurrency="" calendar="" lengthSemantics="" nCharConversionException="true"  
                        timeStampFormat="" timeStampTZFormat="" timeZone="" />  
                </binding>  
            </oracleEBSBinding>  
        </bindings>  
        <client>  
            <endpoint address="oracleebs://ebs-70-12/" binding="oracleEBSBinding"  
                bindingConfiguration="OracleEBSBinding" contract="ConcurrentPrograms_AR"  
                name="OracleEBSBinding_ConcurrentPrograms_AR" />  
        </client>  
    </system.serviceModel>  
</configuration>  

프로젝트에 둘 이상의 WCF 클라이언트가 있는 경우 구성 파일에 여러 클라이언트 엔드포인트 항목이 정의됩니다. 각 WCF 클라이언트 항목은 바인딩 구성 및 대상 Oracle E-Business Suite 아티팩트 기반의 고유한 이름을 갖습니다. 프로젝트에 WCF 클라이언트를 만들기 위해 여러 번 연결하는 경우 각 연결에 대해 하나씩 여러 바인딩 구성 항목이 만들어집니다. 이러한 바인딩 구성 항목의 이름은 OracleEBSBinding, OracleEBSBinding1 등으로 지정됩니다. 특정 연결 중에 만든 각 클라이언트 엔드포인트 항목은 해당 연결 중에 만든 바인딩 항목을 참조합니다.

참고 항목

WCF 서비스 모델을 사용하여 Oracle E-Business Suite 애플리케이션 개발