none
ORA-01460: unimplemented or unreasonable conversion requested RRS feed

  • Question

  • HI
    I'm triny to run oracle stored procedure using Wcf Lob adapter.
    the SP has out Blob parameter and i'm geting this error:

    The adapter failed to transmit message going to send port "WcfSendPort_DownloadAttachment.bindinginfo" with URL "oracledb://xxxxx/". It will be retransmitted after the retry interval specified for this Send Port. Details:"Microsoft.ServiceModel.Channels.Common.TargetSystemException: ORA-01460: unimplemented or unreasonable conversion requested ---> Oracle.DataAccess.Client.OracleException ORA-01460: unimplemented or unreasonable conversion requested    at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure)

       at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, String procedure, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src)

       at Oracle.DataAccess.Client.OracleCommand.ExecuteNonQuery()

       at Microsoft.Adapters.OracleDB.OracleDBXmlParser.ExecuteSingleCommand(OracleCommand command, Boolean recordPresent, Boolean accumateRowAffected)

       at Microsoft.Adapters.OracleDB.OracleDBXmlParser.ExecutePackProcFunc(AdapterDataTable parsedMessage)

       --- End of inner exception stack trace ---

     

    Server stack trace:

       at System.ServiceModel.AsyncResult.End[TAsyncResult](IAsyncResult result)

       at System.ServiceModel.Channels.ServiceChannel.SendAsyncResult.End(SendAsyncResult result)

       at System.ServiceModel.Channels.ServiceChannel.EndCall(String action, Object[] outs, IAsyncResult result)

       at System.ServiceModel.Channels.ServiceChannel.EndRequest(IAsyncResult result)

     

    Exception rethrown at [0]:

       at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)

       at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)

       at System.ServiceModel.Channels.IRequestChannel.EndRequest(IAsyncResult result)

       at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfClient`2.RequestCallback(IAsyncResult result)".

    any idea?

    • Edited by itaiman Tuesday, May 12, 2009 2:24 PM
    Monday, April 27, 2009 2:42 PM

Answers

  • Hi,

    From the stack trace, I presume that you are using Oracle Database adapter from BizTalk adapter pack V 1.0. Can you confirm?

    Also, can you share the SP definition, and a sample input XML you are passing to it? That will help me analyze your issue quickly. Such errors are usually seen when you pass incorrect data, or with LONG data type. In any case, the SP definition and the input XML will help in identifying the issue. Also, what is the value of 'EnableSafeTyping' binding property?

    Thanks,
    Manas.
    Monday, April 27, 2009 3:07 PM

All replies

  • Hi,

    From the stack trace, I presume that you are using Oracle Database adapter from BizTalk adapter pack V 1.0. Can you confirm?

    Also, can you share the SP definition, and a sample input XML you are passing to it? That will help me analyze your issue quickly. Such errors are usually seen when you pass incorrect data, or with LONG data type. In any case, the SP definition and the input XML will help in identifying the issue. Also, what is the value of 'EnableSafeTyping' binding property?

    Thanks,
    Manas.
    Monday, April 27, 2009 3:07 PM
  • thanks, Garg

    confirmed, it is  BizTalk adapter pack V 1.0.
    when i am genranting the schema, the 'EnableSafeTyping' was false and returen decimal type for the oracle number type fileds.
    when it was true it return string type.
    any how i'm getting the same error when i'm changing it to true on the port.

    the same senario is working with topxml adapter and using PL/SQL.

    here are the XML and procedure defention:

    Xml schema:

    <ns0:DOWNLOAD_ATTACHMENT xmlns:ns0="http://Microsoft.LobServices.OracleDB/2007/03/APPS/Package/CNS_ATTACHMENTS_PKG">

      <ns0:P_ATTACHED_DOCUMENT_ID>22813</ns0:P_ATTACHED_DOCUMENT_ID>

      </ns0:DOWNLOAD_ATTACHMENT>

     

    Procedure:

    cns_attachments_pkg.download_attachment(p_attached_document_id => :p_attached_document_id,
    p_file => :p_file,
    p_file_name => :p_file_name,
    p_long => :p_long,
    p_short => :p_short,
    p_url => :p_url,
    x_error_number => :x_error_number,
    x_error_description => :x_error_description);




    p_attached_document_id number in 
    p_file                             blob out 
    p_file_name                   varchar2 out 
    p_long                           long out 
    p_short                          varchar2 out 
    p_url                             varchar2 out 
    x_error_number            number out 
    x_error_description       varchar2 out 
    Tuesday, May 12, 2009 10:26 AM
  • What is the value returned in the p_long out variable? Can you check if the problem persists when you change the long data type to some other data type?
    Wednesday, May 13, 2009 3:14 AM
  • on the p_long its return null value.
    it is not prucedure that I created, so we have problem to change it.

    Wednesday, May 13, 2009 12:08 PM
  • so the procedure has p_long := NULL; in it? let me set up a similar SP locally and get back to you.
    Wednesday, May 13, 2009 12:22 PM
  • What version of ODP.NET are you using?
    Wednesday, May 20, 2009 9:21 AM
  • we are using ODP FOR .NET 2.0 10.2.0.2.20
    Friday, May 22, 2009 3:12 AM