I would like to know the difference between oracle.stellent.ridc.model.DataBinder and intradoc.data.DataBinder.
while as i am able to use oracle.stellent.ridc.model.DataBinder for executing UCM services, there are methods in 10g that gets content based on content ID,which uses binder in following way.
|LWDataBinder localLWDataBinder = new LWDataBinder();|
|localLWDataBinder.receive(new BufferedReader(new StringReader((String)localObject1)));|
When I would like to move this to 11g.
If i use oracle.stellent.ridc.model.DataBinder (interface), i dont have "receive" method in the same. I could use intradoc.data.DataBinder, but am not sure whether it is right.
Also when i import both DataBinder classes, it create problem with method parameter, i.e for methods that are having DataBinder (oracle.stellent.ridc.model) as its paramenter
To give you little bit of background, we are planning to move from UCM 10g to 11g, as part of the same we are migrating the custom components developed using IdcServerBean to RIDC.
should LWDataBinder be replaced with DataBinder ( from oracle.stellent.ridc.model) or DataBinder ( from intradoc.data.DataBinder.).
Any pointer that could resolve my confusion will be helpful and Also could you please tell me if I am on the right path
Thanks in advance,
Are your customizations running inside WebCenter Content such as in a service, service handler or filter? If so, use the Intradoc classes: http://jonathanhult.com/blog/2012/12/where-are-the-intradoc-java-classes-located/
Or are your customizations running external to WebCenter Content? If so, use RIDC: http://jonathanhult.com/blog/2012/07/ridc-versus-cis/
Thanks! for helping me with this. I think in my case part 1 of the answer is applicable. But I had started the re-write the code using RIDC (rather than intradoc classes).
Sorry for being naive, but in 10g code they initiate a connection to the UCM server. Something like the following.
|String connectionStr = "socket:" + serverName + ":" + port;|
|this.userName = userName;|
|Log.info( "Initialising connection " + connectionStr + " for user " + userName);|
|targetServer = new IdcServerBean();|
|targetServer.init("", connectionStr, userName);|
While i could you the following cide in RIDC to create the connection,
|IdcClientManager idcClientManager = new IdcClientManager();|
|idcClient = idcClientManager.createClient(connectionStr);|
|idcContext = new IdcContext(userName);|
|dataBinder = idcClient.createBinder();|
Am not sure how we can achieve it intradoc classes, could you please give me some direction on how to achieve this. Basically the re-write we are doing right now, is mostly for content management function like checkin/checkout/upload/download etc. So when using intradoc classes is it required to create such a connection to content server?
Thanks and Regards,
When using the Intradoc classes, your code runs inside WebCenter Content as either a service, service handler, filter or class alias. So, you do not need to do any sort of connection/authentication.
If you want examples of Intradoc classes, check out my blog:
Component that i am trying to develop basically does all the common content management functions, like checkin/checkout/upload/download etc. I have following questions
Kindly help in resolving this confusion of mine. And also can you point me to code using intradoc classes to achieve any one of the above mentioned functionality.
Thanks in advance,
There are already Web Services provided out of the box that allow you to call WebCenter Content services.
See this article for more information: http://www.oracle.com/technetwork/articles/soa/mcdonald-webcenter-content-services-1930993.html