LSOCP 200 Content Player Java Exception

Dear Collegues,
I am encountering an issue with the LSOCP 200.
Our client's infrastructure as follows:
SAP R/3 Enterprise 4.7 Ext 2.00
LSO         200     0029     SAPK-200PTINLSO     LSO 200 (Learning Solution - Back End) I
LSOFE     200     0027     SAPK-200PRINLSOFE     LSOFE 200 (Learning Solution - Front End
SAP EP 6.0
I have done all the required configuration in R/3 by pointing to the content server and pointing to the Content Player in the respective IMG Tasks.
Now, when I log on as a learner and attempt to start a course, I receive a Java Exception:
*Errors occurred
Incomplete or incorrect data:
com.sap.hcm.ls.lms.servlets.exceptions.InvalidArgumentException course update failed  :
     at com.sap.hcm.ls.lms.servlets.control.CourseUpdater.update(CourseUpdater.java:78)
     at com.sap.hcm.ls.lms.servlets.control.EventDispatcher.updateModels(EventDispatcher.java:116)
     at com.sap.hcm.ls.lms.servlets.control.RequestProcessor.doProcess(RequestProcessor.java:98)
     at com.sap.hcm.ls.lms.servlets.control.RequestProcessor.process(RequestProcessor.java:83)
     at com.sap.hcm.ls.lms.servlets.control.Mediator.processRequest(Mediator.java:221)
     at com.sap.hcm.ls.lms.servlets.control.Mediator.doGet(Mediator.java:150)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
     at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
     at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
     at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
     at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
     at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
     at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
     at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
     at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
     at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
     at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
     at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java(Compiled Code))
     at java.security.AccessController.doPrivileged1(Native Method)
     at java.security.AccessController.doPrivileged(AccessController.java(Compiled Code))
     at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java(Compiled Code))
     at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java(Compiled Code))
CAUSED BY: com.sap.hcm.ls.lms.courseengine.EngineException: failed to get macrostrategy with token=
     at com.sap.hcm.ls.lms.courseengine.steamengine.SteamEngine.getSteamMacroStrategyByToken(SteamEngine.java:180)
     at com.sap.hcm.ls.lms.courseengine.steamengine.SteamCourse.(SteamCourse.java:108)
     at com.sap.hcm.ls.lms.courseengine.steamengine.SteamEngine.loadCourse(SteamEngine.java:303)
     at com.sap.hcm.ls.lms.courseengine.steamengine.SteamEngine.loadCourse(SteamEngine.java:313)
     at com.sap.hcm.ls.lms.data.session.SessionFacade.loadCourse(SessionFacade.java:587)
     at com.sap.hcm.ls.lms.data.session.CourseStateUpdater.loadCourseFromPath(CourseStateUpdater.java:354)
     at com.sap.hcm.ls.lms.data.session.CourseStateUpdater.loadCourse(CourseStateUpdater.java:176)
     at com.sap.hcm.ls.lms.data.session.CourseStateUpdater.update(CourseStateUpdater.java:120)
     at com.sap.hcm.ls.lms.servlets.control.CourseUpdater.update(CourseUpdater.java:74)*
The content plays on the local Content player on the desktop but the moment I attempt to play content with the server content player, this is what i get.
Could you please let me know if you have come across this problem.
Thanks and regards,
Ronald Meyer

Hi Abhiram,
Please get in the IMG
Training and Event Management -> SAP Learning Solution -> Learning Portal -> Select Learning Strategies
Here you need to update your strategies defined.
Regards,
Jorge

Similar Messages

  • LSOCP 200 content player not working intermittent

    We have intermittent problem with playing course/test.                 
    Once a while we've got the error message as below when we want to play a course/test. But when we restart the J2EE via SMICM, the problem is   
    gone.
    The application log is as follows,
    </Body>=
    portalAddress=document.location.protocol + "//" + d...
    <Body>=
    </script>=
    SendHttpRequest(xmlhttp,=eraseCookieUrl);
    <Title>=
    document.writeln("<br><b>Failed=to renew your SSO ticket. Please clos...
    function=getCookie(sName)
    top.command.creatingCookie=false;
    }=
    {=
    processCookieResult(xmlhttp.responseText);=
    </Head>=
    <Head>=
    document.cookieStatus="";
    CreateNewTicket();=
    <script=language="JavaScript">
    if=(sName == aCrumb[0])
    authImage=new Image();          
    document.location.reload();=
    </HTML>=
    window.setTimeout(wait,=1000);
    <HTML>=
    Refresh=ticket
    document.loginForm.close();=
    else=
    return=null;
    for=(var i=0; i < aCookie.length; i++)
    document.writeln("<br>("=+ retVal + ")");
    var=aCrumb = aCookie<i>.split("=");
    <b>Your=session has expired. Please log in ag...
    authImage.src=document.location.protocol + "//jyi:1...
    </Title>=
    //=in this case we don't need to synchro...
         at com.sap.hcm.ls.shared.repository.proxy.MappingFile.readMapping(MappingFile.java:267)
         at com.sap.hcm.ls.shared.repository.proxy.LocationMapperPool.getMapper(LocationMapperPool.java:54)
         at com.sap.hcm.ls.lms.courseloader.repository.RepCourseInfo.setupMapping(RepCourseInfo.java:92)
    CAUSED BY: java.lang.IllegalArgumentException: Illegal identifier for object; must start with a '/': </Body>
         at com.sap.hcm.ls.shared.repository.access.RepObjectId.<init>(RepObjectId.java:77)
         at com.sap.hcm.ls.shared.repository.proxy.MappingFile.readMapping(MappingFile.java:256)
    Any one had the similar problem or can help?
    Thanks!
    Jason

    Thanks ED for your reply!
    The note 529063 and its related notes are already checked. The problem is the system is note stable with the playing course/test. Once a while we need to restart the J2EE or LMS component.
    Jason

  • Offline Content Player & Java Version Issue

    Hi Friends,
    Does anyone know that the LSO Offline Content Player works only on Java Version 1.4.2 and not on any other?
    Also, if the Organisation goes in for a Java Upgrade ( say Version 1.5), would the Offline Content Player Application not fail?
    Points Assured!
    Tan..

    Hello Tania,
    The Offline Content Player does work with newer versions of the JRE, however you will have to test the OCP prior to any additional JRE rollout. This should be part of your companies software deployment strategy.

  • SAP LSO Content Player Error

    Hi All,
    We are in the process of upgrading SAP to 6.0. We also upgrade our LSO from 300 to 600 including the Authoring Environment and the Content Management System. Now, after we publish the course via the Authoring Environment/Repository Explorer and try to play the course from our portal, it gives an error saying Incomplete or Incorrect Data. Here is the actual error
    Errors occurred
    Incomplete or incorrect data:
    com.sap.hcm.ls.lms.servlets.exceptions.InvalidArgumentException  :
         at com.sap.hcm.ls.lms.servlets.control.CourseUpdater.update(CourseUpdater.java:79)
         at com.sap.hcm.ls.lms.servlets.control.EventDispatcher.updateModels(EventDispatcher.java:127)
         at com.sap.hcm.ls.lms.servlets.control.RequestProcessor.doProcess(RequestProcessor.java:100)
         at com.sap.hcm.ls.lms.servlets.control.RequestProcessor.process(RequestProcessor.java:80)
         at com.sap.hcm.ls.lms.servlets.control.Mediator.processRequest(Mediator.java:226)
         at com.sap.hcm.ls.lms.servlets.control.Mediator.doGet(Mediator.java:146)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(AccessController.java:180)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)
    Caused by: com.sap.hcm.ls.lms.courseloader.LoaderException: Failed to look for mapping file for object: /Company_Required_Training/New_Hire_Training/Policy_Review_and_Acknowledgement/v1/Policy_Review_and_Acknowledgement_ORG.crs
         at com.sap.hcm.ls.lms.courseloader.repository.RepCourseInfo.setupMapping(RepCourseInfo.java:96)
         at com.sap.hcm.ls.lms.courseloader.repository.RepCourseInfo.(RepCourseInfo.java:52)
         at com.sap.hcm.ls.lms.courseloader.repository.RepCourseLoader.getCourse(RepCourseLoader.java:106)
         at com.sap.hcm.ls.lms.data.session.CourseStateUpdater.loadCourseFromPath(CourseStateUpdater.java:388)
         at com.sap.hcm.ls.lms.data.session.CourseStateUpdater.loadCourse(CourseStateUpdater.java:188)
         at com.sap.hcm.ls.lms.data.session.CourseStateUpdater.update(CourseStateUpdater.java:137)
         at com.sap.hcm.ls.lms.servlets.control.CourseUpdater.update(CourseUpdater.java:72)
         at com.sap.hcm.ls.lms.servlets.control.EventDispatcher.updateModels(EventDispatcher.java:127)
         at com.sap.hcm.ls.lms.servlets.control.RequestProcessor.doProcess(RequestProcessor.java:100)
         at com.sap.hcm.ls.lms.servlets.control.RequestProcessor.process(RequestProcessor.java:80)
         at com.sap.hcm.ls.lms.servlets.control.Mediator.processRequest(Mediator.java:226)
         at com.sap.hcm.ls.lms.servlets.control.Mediator.doGet(Mediator.java:146)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(AccessController.java:180)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)
    Caused by: com.sap.hcm.ls.shared.repository.access.RepIOException: Error with object: /Company_Required_Training/New_Hire_Training/Policy_Review_and_Acknowledgement/v1/locMappingXQ7.txt, Http-Error: 401: Unauthorized
         at com.sap.hcm.ls.shared.repository.access.http.HttpRepository.throwHttpError(HttpRepository.java:894)
         at com.sap.hcm.ls.shared.repository.access.http.HttpRepository.readFile(HttpRepository.java:434)
         at com.sap.hcm.ls.shared.repository.access.DeltaVerRepository.readFile(DeltaVerRepository.java:329)
         at com.sap.hcm.ls.shared.repository.access.Repository.readFile(Repository.java:350)
         at com.sap.hcm.ls.shared.repository.proxy.MappingFile.readMapping(MappingFile.java:194)
         at com.sap.hcm.ls.shared.repository.proxy.LocationMapperPool.getMapper(LocationMapperPool.java:54)
         at com.sap.hcm.ls.lms.courseloader.repository.RepCourseInfo.setupMapping(RepCourseInfo.java:92)
         at com.sap.hcm.ls.lms.courseloader.repository.RepCourseInfo.(RepCourseInfo.java:52)
         at com.sap.hcm.ls.lms.courseloader.repository.RepCourseLoader.getCourse(RepCourseLoader.java:106)
         at com.sap.hcm.ls.lms.data.session.CourseStateUpdater.loadCourseFromPath(CourseStateUpdater.java:388)
         at com.sap.hcm.ls.lms.data.session.CourseStateUpdater.loadCourse(CourseStateUpdater.java:188)
         at com.sap.hcm.ls.lms.data.session.CourseStateUpdater.update(CourseStateUpdater.java:137)
         at com.sap.hcm.ls.lms.servlets.control.CourseUpdater.update(CourseUpdater.java:72)
         at com.sap.hcm.ls.lms.servlets.control.EventDispatcher.updateModels(EventDispatcher.java:127)
         at com.sap.hcm.ls.lms.servlets.control.RequestProcessor.doProcess(RequestProcessor.java:100)
         at com.sap.hcm.ls.lms.servlets.control.RequestProcessor.process(RequestProcessor.java:80)
         at com.sap.hcm.ls.lms.servlets.control.Mediator.processRequest(Mediator.java:226)
         at com.sap.hcm.ls.lms.servlets.control.Mediator.doGet(Mediator.java:146)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(AccessController.java:180)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)
    I have looked at the R/3 configuration and everything looks good there. Is there anything else that needs to be done for the LSO upgrade?
    I did notice that a lot of people have posted the same issue in the forums, however I haven't seen the solution being posted. Any help/suggestions regarding this will be appreciated!
    Thanks again.

    Hi Kavita,
    In general, this issue can occur when the course is created in the learning portal and the course doesn't exist in the path of the CMS.
    Please try the following:
    1) Please try another course to see if this issue still happens.
    2) Try restarting only the content player to see if this corrects the  issue.
    Regards,
    Li

  • Error: ORA-29532: Java call terminated by uncaught Java exception:

    Anyone have this similar problem of
    ORA-29532: Java call terminated by uncaught Java exception:
    javax.xml.rpc.soap.SOAPFaultException: Caught exception while handling request:
    deserialization error: XML reader error: unexpected character content:
    "A"
    The service is running fine in a browser and returns the date. When I run it using the PL/SQL it has the error mentioned above.
    I am running the following:
    CREATE OR REPLACE FUNCTION GetDate_wb( p_dummy IN VARCHAR2 )
    RETURN DATE
    AS
    l_service sys.UTL_DBWS.service;
    l_call sys.UTL_DBWS.call;
    l_result ANYDATA;
    l_wsdl_url VARCHAR2(1024);
    l_service_name VARCHAR2(200);
    l_operation_name VARCHAR2(200);
    l_input_params sys.UTL_DBWS.anydata_list;
    l_port sys.UTL_DBWS.qname := 8988;
    BEGIN
    l_wsdl_url := 'http://org-lblakisa1:8988/BPEL_OD-LoginWS-context-root/getDate1SoapHttpPort?WSDL';
    l_service_name := 'getDate1';
    l_operation_name := 'getDate';
    l_service := sys.UTL_DBWS.create_service (
    wsdl_document_location => URIFACTORY.getURI(l_wsdl_url),
    service_name => l_service_name);
    l_call := sys.UTL_DBWS.create_call (
    service_handle => l_service,
    port_name => NULL,
    operation_name => l_operation_name);
    l_input_params(1) := ANYDATA.ConvertVarchar2(p_dummy);
    l_result := sys.UTL_DBWS.invoke (
    call_handle => l_call,
    input_params => l_input_params);
    sys.UTL_DBWS.release_call (call_handle => l_call);
    sys.UTL_DBWS.release_service (service_handle => l_service);
    RETURN ANYDATA.AccessDate(l_result);
    END;
    /

    Problem is resolved... We had a version issue in that 10.1.3 web service is not compatible. 10.1.2 worked.

  • Is LSO content player on an independent server?

    We try to install/configure LSO.  When it comes to the content player, we are not sure whether it is an add-on to ERP or EP.
    Would you please explain ? Thanks!

    Hi,
    The Content Player (LSOCP), is based on a Java Platform, so you have to install it and configure in your SAP J2EE Engine.
    Depending on your ERP version (i suppose 6.0.X), you have to install the corresponding version;
    - LSOCP 600 (no EHPs)
    - LSOCP 602 (With EHP2)
    - LSOCP 604 (With EHP4)
    Follow this thread to solve some issues after installation:
    Unable to play content in LSO Content Player.
    Regards!

  • Is there a way to handle custom java exception in OSB?

    For example, i created a exception that extends RuntimeException.
    My exception has a new field called "code".
    I want to handle this exception in Oracle Service Bus process and retrieve this code to throws another exception with a XML structure that includes the code.
    Is there a way to do that ?
    <con:fault xmlns:con="http://www.bea.com/wli/sb/context">
         <con:errorCode>BEA-382515</con:errorCode>
         <con:reason>Callout to java method "public static org.apache.xmlbeans.XmlObject ...</con:reason>
         <con:java-exception xmlns:con="http://www.bea.com/wli/sb/context">
             <con:java-content ref="jcid:33a6c126:14006f3df18:-7fd9"/>
         </con:java-exception>
         <con:location xmlns:con="http://www.bea.com/wli/sb/context">
             <con:node>optmusPipeline</con:node>                    
             <con:pipeline>optmusPipeline_request</con:pipeline>
             <con:stage>processStage</con:stage>
             <con:path>request-pipeline</con:path>   
         </con:location>
    </con:fault>
    it is not enough to recover the information i needed.

    Hi Sandro,
    I've got the same situation. I agree that returning xml from function is not a best choice as you have to manually check if return status is an error or not. Processing exception in error handler is better and this is how I do it:
    I am doing a java callout to a function that can throw exception. Then I add ErrorHandler to stage containing this callout (all the exception are caught here).
    In the error handler I check if $fault/ctx:java-exception is not null. If not then I pass thrown exception to my utility function that converts it to xml similar to yours:
    import org.apache.xmlbeans.XmlException;
    import org.apache.xmlbeans.XmlObject;
    public static XmlObject exceptionToXML(Throwable exception)
      throws XmlException {
      String xmlString = exceptionToString(exception);
      return XmlObject.Factory.parse(xmlString);
    public static String exceptionToString(Throwable exception) {
      String cause = "";
      if (exception.getCause() != null) {
      cause = exceptionToString(exception.getCause());
      return String
      .format("<exception><name>%s</name><description>%s</description>%s</exception>",
      exception.getClass().getName(), exception.getMessage(),
      cause);
    Calling exceptionToXML with $fault/ctx:java-exception/ctx:java-content returns:
    <exception>
         <name>pl.app.MyException</name>
         <description>Exception message</description>
    </exception>
    Then you can check the exception class (IF action: $exception/name/text() = "pl.app.MyException") and handle it accordingly.
    Good luck,
    Krzysiek

  • Content Player navigation buttons not working for everyone

    Hi,
    Some of the participants are experiencing the issue with Content Player navigation buttons 'Continue' , 'End Test' etc..
    We suspect it is because of the version of Java runtime environment on thier PC after eliminating the browser cache, or IE version issues.
    Could anyone please tell me what are the supported Java versions for proper functioning of LSO600 Content player?
    We are on ECC 6.0, LSO600 and SAP portal version EP7.
    Any help is highly appreciated.
    Thanks,
    Jaya

    Hello Jaya,
    java supported version is more than JRE 1.4.2._07
    and IE is IE6 and IE7
    LSO supports Java 1.4.02_07 to java 1.6
    Browsers:
    Micorsoft IE6 and IE7.
    Firefox from 2.2
    If there is more than one Java version on the pc, try forcing the browser to use a certain version of Java by going to the control panel -> Java -> in java control panel go to -> java tab -> Click view in Java Applet run time settings -> Select one of the JRE to enable it and force the browser to use this version of Java.
    Regards,
    Manny

  • How to get Formatted Mail Content through Java Application

    I am using a mail sending function in my applet code which is listed below:
    Main content is fetched from a format tool bar in JSP Page and it is passed as parameter to applet and it is used inside the mail content.
    Same content when passed and executed in a JSP page, the formatted content is not lost and it is included in mail content as what it is fetched from Format Tool Bar.
    Format is lost when it is used inside the Java Application mail sending function.
    The below code I have used to send mail:
    package com;
    import java.util.HashSet;
    import java.util.Properties;
    import java.util.Set;
    import javax.mail.BodyPart;
    import javax.mail.Message;
    import javax.mail.Multipart;
    import javax.mail.Session;
    import javax.mail.Transport;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeBodyPart;
    import javax.mail.internet.MimeMessage;
    import javax.mail.internet.MimeMultipart;
    class mailsendClass
    public void sendmail(String from,String host,boolean debug,String msgText)
         try
              Set tomailsid = new HashSet();
              Set ccmailsid = new HashSet();
              //to mail ids           
              tomailsid.add("[email protected]" );          
              tomailsid.add("[email protected]" );
              tomailsid.add("[email protected]" );
              //cc mail ids
              ccmailsid.add("[email protected]" );
              ccmailsid.add("[email protected]" );
              String mailarray[]= (String[])tomailsid.toArray(new String[tomailsid.size()]);
              String ccmailID[]= (String[])ccmailsid.toArray(new String[ccmailsid.size()]);
              Properties props = new Properties();
              //props.put("mail.smtp.port","425");
              props.setProperty("mail.smtp.host", host);
              if (debug) props.setProperty("mail.debug", ""+debug);
              Session session = Session.getInstance(props, null);
              session.setDebug(debug);
              String mailsubject = "Mail Subject";
              // create a message
              Message msg = new MimeMessage(session);
              msg.setFrom(new InternetAddress(from));
              javax.mail.internet.InternetAddress[] toAddress=new javax.mail.internet.InternetAddress[mailarray.length];
              for (int i=0;i<mailarray.length ;i++ )
              toAddress=new javax.mail.internet.InternetAddress(mailarray[i]);
              System.out.println ("id inside to address loop " + i + " is "+ mailarray[i]);
              System.out.println ("toAddress " + i + " is "+ toAddress[i]);
              msg.setRecipients(Message.RecipientType.TO, toAddress);
              msg.setSubject(mailsubject);
              try
                   javax.mail.internet.InternetAddress[] CCAddress=new javax.mail.internet.InternetAddress[ccmailID.length];
                   for (int i=0;i<ccmailID.length ;i++ )
                        CCAddress[i]=new javax.mail.internet.InternetAddress(ccmailID[i]);
                        System.out.println("CC Array is ===> " +CCAddress[i] );//          
              msg.setRecipients(Message.RecipientType.CC,CCAddress);
              catch(Exception ss)
                   System.out.println("CC mail Exception is ====>"+ ss);     
                   msg.setSentDate(new java.util.Date());
    //          Multipart multipart = new MimeMultipart("relative");
                   Multipart multipart = new MimeMultipart("alternative");
              BodyPart messageBodyPart = new MimeBodyPart();
              messageBodyPart.setContent(msgText, "text/html");
    //          messageBodyPart.setContent(msgText, "text/plain");
              multipart.addBodyPart(messageBodyPart);          
                   msg.setContent(multipart);
              Transport.send( msg );
         catch (Exception e)
              System.out.println("The Exception is ------>"+e);
    public class SendMail {
    public static void main(String[] args)
         System.out.println("before Mail Send ");
         mailsendClass mail = new mailsendClass();
         String from="[email protected]";
         String host="172.16.2.6";
         String msgText="<p><strong>Index</strong><br />I have posted the following PDFs (Second Pages) as mentioned to start producing the Index:<br />• Engage<br />• Chapters 1–6<br /><a title='ftp:///Index' href='ftp://index/'>ftp:///Index</a><strong><br />XML Coding - Files with errors</strong><br />• Engage<br />• Chapters 1–6<br /><a title='ftp:///XML_Coding_Need%20Fixing' href='ftp://xml_coding_need%20fixing/'>ftp:///XML_Coding_Need%20Fixing</a></p>";
         mail.sendmail(from,host,true,msgText);
         System.out.println("after Mail Send ");
    Content placed in format tool bar is as follows:
    Index
    I have posted the following PDFs (Second Pages) as mentioned to start producing the Index:
    • Engage
    • Chapters 1–6
    ftp:///Index
    XML Coding - Files with errors
    • Engage
    • Chapters 1–6
    ftp:///XML_Coding_Need%20Fixing
    Content fetched from format tool bar inside JSP page is as follows:
    <p><strong>Index</strong>
    I have posted the following PDFs (Second Pages) as mentioned to start producing the Index:
    &bull; Engage
    &bull; Chapters 1&ndash;6
    <a title="ftp:///Index" href="ftp://index/">ftp:///Index</a><strong>
    XML Coding - Files with errors</strong>
    &bull; Engage
    &bull; Chapters 1&ndash;6
    <a title="ftp:///XML_Coding_Need%20Fixing" href="ftp://xml_coding_need%20fixing/">ftp:///XML_Coding_Need%20Fixing</a></p>
    Fetched Content inside Java Application through parameter and it will use as input for mail content is as follows:
    <p><strong>Index</strong>
    I have posted the following PDFs (Second Pages) as mentioned to start producing the Index:
    • Engage
    • Chapters 1–6
    <a title="ftp:///Index" href="ftp://index/">ftp:///Index</a><strong>
    XML Coding - Files with errors</strong>
    • Engage
    • Chapters 1–6
    <a title="ftp:///XML_Coding_Need%20Fixing" href="ftp://xml_coding_need%20fixing/">ftp:///XML_Coding_Need%20Fixing</a></p>
    Actual mail received after Java Application execution is as follows:
    Index
    I have posted the following PDFs (Second Pages) as mentioned to start producing the Index:
    ? Engage
    ? Chapters 1?6
    ftp:///Index
    XML Coding - Files with errors
    ? Engage
    ? Chapters 1?6
    ftp:///XML_Coding_Need%20Fixing
    Unicode characters in the mail content are replaced by “?”.
    In the function listed above I have used the MIME Setting as
    Multipart multipart = new MimeMultipart("alternative");
    I have tried by using “relative” MIME format also as
    Multipart multipart = new MimeMultipart("relative");
    But I am not getting the actual format passed as input to the Java Application in the mail content.
    Can anybody let us know how to overcome this problem?
    Thanks in advance.

    You need to really understand how the different multiparts work instead of just guessing.
    But for your application, you don't need a multipart at all. Just use msg.setText(msgText, null, "html");
    Although that doesn't explain your problem, it will simplify your program.
    How are you determining that the mail received doesn't have the formatting? Are you viewing it in a
    mail reader (e.g., Outlook)? Or are you fetching it with JavaMail?
    Are you using an Exchange server? Exchange will often reformat your message to what it thinks you meant.

  • Content player configuration error

    Dear All
    i was facing an error when i do configuration content player i dont know why ?
    can any one help me out . i have lsocp 600
    Username='lmsuser', SystemName='ASB', Client='235', Host=' rueccasb', Language='', SystemNumber='00', EnablePoolSharing='true', MaxConnection=50, AbapDebug=false:
    CPCFG.RSURL = https://ruept.sabic.com:50001/irj/go/km/docs/documents/kp7235
    CPCFG.REPUS = lso_arshad
    ServerURL=https://ruept.sabic.com:50001/irj/go/km/docs/documents/kp7235 NOT ok!
    regards
    Arshad

    Hi Mahamad Arshad,
    Here we facing same issue, can u please  explain me how you resolved.
    Thanks and Regards,
    Mahee

  • SAP LSO Learning Solution - Content Player

    We don't want to use the Java based online/offline content player for viewing/displaying course content.  Does anyone know if the content is compatible with either Flash or Media Player?  What is the format of how the content is delivered?
    Regards,
    Thomas

    Hi,
    Check SAP Note 746917 - FAQ Content Player - SAP Learning Solution
    Thanks
    Sunny

  • Remove the toolbar for the LSO Content Player Window.

    Hi All,
            We are implementing SAP LSO. In the BSP Application HCM_Learning, I am able to run the course by clicking on link 'Start Now'. The BSP page related to this is "Training Home.htm".
    Now a new window popup up ( ie) the content player popup in a new window and plays the course. I want to remove the toolbar from this new popup window.
    I changed the toolbar value from yes to no in the Function Popup() defined .
    function popup(t, b)
             thePopup = window.open (b,t,"toolbar=no,menubar=no,width=300,height=250,scrollbars,resizable");
              thePopup.focus();
    But still i'm getting that toolbar in the popup window.
    How can i resolve this.?
    Please give me your valuable inputs.
    Thanks,
    Eben Joyson.

    Hey Ravi,
    Thanks for sharing your perspective. 
    After thinking further about the real estate question, I believe that, at least in the US, most instructional designers aim to present content at 800x600 pixel size.  This accounts for differing monitor sizes, etc.  If this is the case, then good instructional design (e.g. don't put too much content on a screen at once) should assure that content could be played in-line (in the BSP page).  Since the navigational controls are at the bottom, that wouldn't have any effect on width of the page and could also be accommodated.
    I'm still of the opinion that SAP LSO (and all leading LMS systems) should evolve to presenting content in the base window.  Perhaps there are some extreme exceptions where the extra real estate would make a true difference.  In that case, perhaps the learner should be offered an LSO learner setting where they can choose to display content in-line or in a separate window....let them decide   Alternatively, one could offer the Training Administrator an infotype setting where they specify whether the content should be displayed in-line (default) versus in a separate popup (this could be used on an exception basis).
    Gary
    Edited by: Gary Pearl on Oct 29, 2008 9:25 AM

  • Configuration Content player error

    Dear All
    i was facing an error when i do configuration content player i dont know why ?
    can any one help me out . i have lsocp 600
    Username='lmsuser', SystemName='ASB', Client='235', Host=' rueccasb', Language='', SystemNumber='00', EnablePoolSharing='true', MaxConnection=50, AbapDebug=false:
    CPCFG.RSURL = https://ruept.sabic.com:50001/irj/go/km/docs/documents/kp7235
    CPCFG.REPUS = lso_arshad
    ServerURL=https://ruept.sabic.com:50001/irj/go/km/docs/documents/kp7235 NOT ok!
    regards
    Arshad

    ALready Resolved

  • Continue button does not work in content player for user on XP system

    "Continue" or "Here" buttons does not work in "My Learning" content player for users on XP unlike for users on windows 2007 works fine. Pls let me know if XP needs to be on certain java version to work. we are on LSOFE 604.Java 1.6_21, IE8.
    Pls let me know why user on windows 7 don't have any issues completing the course in ESS thru content player and only XP users have issues.
    Thanks in advance.

    Nicklas,
    Check the link below. Maybe it will help.
    http://discussions.apple.com/thread.jspa?threadID=2672794&tstart=30

  • Hiding buttons in Content Player - HCM Learning

    I have a requirement to hide the buttons(Settings, Print, Help,Log Off) from content player in HCM Learning Application. Since content player  is a JAVA application, I am not sure where I have to write the code to hide these buttons.
    If anybody have idea about this, please

    Hello,
    To hide you need to track the layout (view) of the application and change directly there by adding ABAP logic through
    <%.... %>
    Hope it will solve the prolem
    Thanks.
    K.

Maybe you are looking for