Skip to Main Content

Application Development Software

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

CHECKIN_UNIVERSAL service in RIDC for large files

user12189421Sep 5 2018 — edited Oct 3 2018

Hi,

I want to attach large files to oracle web center content remotely. At first I use generic web services for doing that but exception occurred. Then I realized generic web service don't support MTOM so we can't use them for attaching large files!

after that I use RIDC java API to do that. in this case when I upload file with about 700MB everything is OK but when I choose larger file near 1G the exception below occur:

oracle.stellent.ridc.protocol.ServiceException: Content item 'TESTRIDC111' was not successfully checked in. IOException The error was caused by an internally generated issue. The error has been logged.

    at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:142)

    at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:108)

    at com.irisaco.CallECMServices.checkIn(CallECMServices.java:172)

    at com.irisaco.CallECMServices.main(CallECMServices.java:67)

and when I choose file with 2G below error occur:

WARNING: Bad socket detected, attempting retry [2]

  • oracle.stellent.ridc.protocol.ProtocolException: java.net.SocketTimeoutException: Read timed out

        at oracle.stellent.ridc.protocol.intradoc.HdaProtocol.readResponse(HdaProtocol.java:255)

        at oracle.stellent.ridc.IdcClient.sendRequest(IdcClient.java:184)

        at com.irisaco.CallECMServices.checkIn(CallECMServices.java:164)

        at com.irisaco.CallECMServices.main(CallECMServices.java:64)

My code is :

            IdcClientManager manager = new IdcClientManager();

            IdcClient idcClient;

            idcClient = manager.createClient(ECMServer);

            idcClient.getConfig ().setSocketTimeout (900000);

            IdcContext userContext = new IdcContext(weblogicUser);

            DataBinder binder = idcClient.createBinder();

            // populate the binder with the parameters

            binder.putLocal("IdcService", "CHECKIN_UNIVERSAL");

            // get the binder

            binder.putLocal("dDocTitle", dDocTitle);

            binder.putLocal("dDocName", dDocName);

            binder.putLocal("dDocType", dDocType);

            binder.putLocal("dSecurityGroup", dSecurityGroup);

            binder.putLocal("dDocAuthor", dDocAuthor);

            binder.putLocal("dDocAccount", dDocAccount);

            binder.addFile("primaryFile", new TransferFile(new File(path)));

            // check in the file

            ServiceResponse response =

                idcClient.sendRequest(userContext, binder);

            DataBinder responseBinder = response.getResponseAsBinder();

            String dID = responseBinder.getLocal("dID");

At first please inform me is there any way to use generic web service for doing that?

Second is there any limitation for calling RIDC API in file size? if there is not why these exception occur?

any help would be appreciated

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Oct 31 2018
Added on Sep 5 2018
4 comments
642 views