cancel
Showing results for 
Search instead for 
Did you mean: 

problem in importing lcmbiar to CMS through java SDK

Former Member
0 Kudos

Hi,

I am currently developing a feature to implement a .lcmbiar (webi report archive) importing from local file system to CMS.

This feature is implemented through java SDK client.

I follow the sample and guide in SDK development guide (how to import BIAR file to CMS) and have no error in my JAVA side.

java console output is as below

Import 'LCM'  SI_CUID = Ac1aKZlzj5VJmMQi5LDa53s

Import 'Promotion Jobs'  SI_CUID = AZfc1jCdhktKjrQ34x05nNY

Import 'export telecom Bo'  SI_CUID = FvrcK1PFkAIADg0AAACn4GoBRDfmiQ4n

But the webi report archive is not actually imported into CMS. and i found this error message in promotion job list under "LCM" folder

Sorry, Promotion management application is unable to process your request.

The error from the server is: Login to promotion management failed.(PRS 00001)com.businessobjects.vms.VMSException: com.businessobjects.vms.VMSException: java.lang.StringIndexOutOfBoundsException: String index out of range: -1 at com.businessobjects.lcm.service.oca.sdk.LCMServiceOCAClient.setVMSSession(LCMServiceOCAClient.java:184) at com.businessobjects.lcm.actionHelper.VMSActionHelper.initializeVMSServer(VMSActionHelper.java:663) at com.businessobjects.lcm.actionHelper.VMSActionHelper.getLatestRevisionCAF(VMSActionHelper.java:1840) at com.businessobjects.lcm.actionHelper.VMSActionHelper.performAction(VMSActionHelper.java:205) at com.businessobjects.lcm.actions.VMSActions.execute(VMSActions.java:42) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at com.businessobjects.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:110) at com.businessobjects.http.servlet.internal.ServletLastFilterChainElement.service(ServletLastFilterChainElement.java:30) at com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:46) at com.businessobjects.lcm.LCMCacheControleFilter.doFilter(LCMCacheControleFilter.java:27) at com.businessobjects.http.servlet.internal.FilterRegistration.doFilter(FilterRegistration.java:72) at com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:43) at com.businessobjects.bip.core.web.boetrustguard.BOETrustPrepareFilter.doFilter(BOETrustPrepareFilter.java:35) at com.businessobjects.http.servlet.internal.FilterRegistration.doFilter(FilterRegistration.java:72) at com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:43) at com.businessobjects.bip.core.web.supportabilty.TraceLogScopeFilter.doFilter(TraceLogScopeFilter.java:38) at com.businessobjects.http.servlet.internal.FilterRegistration.doFilter(FilterRegistration.java:72) at com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:43) at com.businessobjects.sdk.actionfilter.WorkflowFilter.doFilter(WorkflowFilter.java:45) at com.businessobjects.http.servlet.internal.FilterRegistration.doFilter(FilterRegistration.java:72) at com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:43) at com.businessobjects.bip.core.web.appcontext.RequestInitFilter.doFilter(RequestInitFilter.java:26) at com.businessobjects.http.servlet.internal.FilterRegistration.doFilter(FilterRegistration.java:72) at com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:43) at com.businessobjects.http.servlet.internal.BundlePathAwareServiceHandler.serviceHelper(BundlePathAwareServiceHandler.java:235) at com.businessobjects.http.servlet.internal.BundlePathAwareServiceHandler.service(BundlePathAwareServiceHandler.java:197) at com.businessobjects.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:248) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.eclipse.equinox.servletbridge.BridgeServlet.service(BridgeServlet.java:220) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at com.businessobjects.pinger.TimeoutManagerFilter.doFilter(TimeoutManagerFilter.java:168) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:743) com.businessobjects.vms.VMSException: com.businessobjects.vms.VMSException: java.lang.StringIndexOutOfBoundsException: String index out of range: -1



Could anyone give me a hint or suggest to continue to next step, thanks for your kindly help

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hey William,

What's the version of BI you are using (including patch level)?

Did you try to import the BIAR file manually with either biarengine or using the web interface of Promotion Management to check the integrity of the file, reduce the complexity and narrow down the issue to SDK or the actual BIAR?

Regards

Former Member
0 Kudos

Hi,

Share my update to this issue, which i think can be marked resolved.

actually, the .lcmbiar file can be succesfully imported into new CMS through web portal -> promotion manager mannually.

i guess the .lcmbiar which was exported mannually through promotion manager and .biar is not the same format. so i tried another way to implement my task.

first, i write a SDK programe according to SDK guide to export webi reports to a .BIAR archive;

second, i use the previous import SDK client to import this .biar file, it works. including all webi reports and related .unx resources are all be imported to new CMS.


Former Member
0 Kudos

Glad to hear you figured it out.

Just a word of warning: Not sure which version you are working with and your use case (you did not mention it) but in 4.0/4.1, I'd a bit surprised you generate BIAR files instead of LCMBIAR as BIAR would be generated by Upgrade Management Tool (UMT) and it's not the recommended way to transfer between same patch level systems where LCMBIAR, Promotion Management and BIARengine are the way forward.

HTH

Former Member
0 Kudos

Hi,

I am in the version 4.1

yes, you r right, i only can export webi archive in the format of .LCMBIAR through "promoton management". but this archive format cannot be correctly import back to new CMS installation through SDK (programming java client).

so i have to export through SDK first, whose outcome is BIAR format, and can be correctly import back to a new CMS installation through SDK.