none
Dynamic Send Port : The FILE send adapter cannot open file C:\Temp for writing. Details: Access is denied. RRS feed

  • Question

  • Hi All,

    We have requirement of using ESB toolkit and transforming incoming xml file to edi format. So, we are using ItinerarySelectReceiveXML pipeline for receiving the input from the input location and "EDISend" pipeline for transforming it into EDI and send it to destination.

    Now, the receive pipeline is picking up the file, but it is not processed and sent to destination.

    And, we are getting an Access Denied error from Dynamic send port.

    Error Description : 

    The FILE send adapter cannot open file C:\Users\Public\Temp for writing.
     Details: Access is denied.

    Any Immediate solutions/suggestions are appreciated...Thanks.


    Anand

    Wednesday, June 11, 2014 12:51 PM

Answers

  • The difference between dynamic and static port would be send handler. For dynamic port, default send handler will be used and for static port the one configured on the port will be used, could you validate this configuration.

    Also sometimes, administrative privileges are not "real" administrative privileges and company admins will have limited permissions on C Drive folders. Try writing to some other folder to isolate the issue.


    Regards, Ajeet Kumar MCTS Biztalk Server

    Wednesday, June 11, 2014 2:43 PM
  • I think you are trying to send file through ESB Toolkit itinerary.

    Which is using web services and the the application pool account who is sending the file.

    You need to double check user account in core Web Service in ESB Configuration Tool and make sure that user has a privilege to required folder. 



    When you see answers and helpful posts, please click Vote As Helpful, Propose As Answer, and/or Mark As Answer


    Wednesday, June 11, 2014 1:35 PM

All replies

  • Make sure the User running your BizTalk Host Instance has sufficient permissions to the folder (FULL ACCESS)

    Morten la Cour

    Wednesday, June 11, 2014 12:53 PM
  • Hi Cour,

    Thanks for the response.

    I have BizTalk server configured on my own machine and it has administrative privileges.

    If we use Static send port, we are getting the desired output... We are getting this error only when using Dynamic send port. ( we are using ItinerarySendPassthrough pipeline )


    Anand

    Wednesday, June 11, 2014 12:57 PM
  • I think you are trying to send file through ESB Toolkit itinerary.

    Which is using web services and the the application pool account who is sending the file.

    You need to double check user account in core Web Service in ESB Configuration Tool and make sure that user has a privilege to required folder. 



    When you see answers and helpful posts, please click Vote As Helpful, Propose As Answer, and/or Mark As Answer


    Wednesday, June 11, 2014 1:35 PM
  • I have BizTalk server configured on my own machine and it has administrative privileges.

    As a side note, the BizTalk Service Accounts should not have Administrator rights on any machine.

    Wednesday, June 11, 2014 2:14 PM
  • The difference between dynamic and static port would be send handler. For dynamic port, default send handler will be used and for static port the one configured on the port will be used, could you validate this configuration.

    Also sometimes, administrative privileges are not "real" administrative privileges and company admins will have limited permissions on C Drive folders. Try writing to some other folder to isolate the issue.


    Regards, Ajeet Kumar MCTS Biztalk Server

    Wednesday, June 11, 2014 2:43 PM
  • Hola,

    If you (or anyone else) are still having trouble, you will get this same error if you don't specify a file name (ie, %MessageID%.xml) at the end of your TransportLocation setting. Just one more thing to doublecheck before you drive yourself crazy changing permissions. Hope this helps someone!

    Neil

    • Proposed as answer by Mauricio Feijo Monday, August 14, 2017 4:24 PM
    Friday, October 31, 2014 11:27 PM
  • Hola,

    If you (or anyone else) are still having trouble, you will get this same error if you don't specify a file name (ie, %MessageID%.xml) at the end of your TransportLocation setting. Just one more thing to doublecheck before you drive yourself crazy changing permissions. Hope this helps someone!

    Neil

    This answer was very underrated and deserves it's time to shine. 

    If the dynamic port is configured with UNC that is looked up (read from a database, for example) it would be *very* easy to forget to add @"\%MessageID%.xml" to the end of the UNC when assigning it to msg(Microsoft.XLANGs.BaseTypes.Address).

    So if you are losing your sleep over this mysterious "Acess is denied" exception, make sure your expression shape looks like this:

    theOutboundMessage = theInboundMessage;
    dynamicPort(Microsoft.XLANGs.BaseTypes.Address) = theTargetURI + @"\%MessageID%.xml";
    dynamicPort(Microsoft.XLANGs.BaseTypes.TransportType) = "FILE";
    



    My Technet Articles

    If you like this or another reply, vote it up!
    If you think this or another reply answers the original question, mark it or propose it as an answer.


    Mauricio Feijo
    www.mauriciofeijo.com

    Monday, August 14, 2017 4:24 PM