Steps to generate Token for opendoc url call in XI3.1

Hi Guys,
I am quite new to Sdk's and java programming .
I am trying to get some help in generating token for opendoc url to avoid login while trying to access a report in Infoview.
From a previous post I got this code:
<%@ page import="com.crystaldecisions.sdk.framework.*" %>
<%@ page import="com.crystaldecisions.sdk.exception.SDKException" %>
<%@ page import="com.crystaldecisions.sdk.occa.security.*" %>
<%
boolean loginSuccessful = false;
IEnterpriseSession boEnterpriseSession = null;
String username = "Administrator";
String password = "pwd";
String cmsname  = "CMS";
String authenticationType = "secEnterprise";
try {
   //Log in.
   boEnterpriseSession = CrystalEnterprise.getSessionMgr().logon( username, password, cmsname, authenticationType);
   if (boEnterpriseSession == null) {
      out.print("<FONT COLOR=RED><B>Unable to login.</B></FONT>");
   } else {
      loginSuccessful = true;
} catch (SDKException sdkEx) {
   out.print("<FONT COLOR=RED><B>ERROR ENCOUNTERED</B><BR>" + sdkEx + "</FONT>");
if (loginSuccessful) {
   ILogonTokenMgr boLogonTokenMgr = boEnterpriseSession.getLogonTokenMgr();
   String logonToken = boLogonTokenMgr.createLogonToken("", 60, 1);
   String infoViewURL = null;
   String tokenParam = null;
   String redirectURL = null;
   infoViewURL = "http://server:8080/InfoViewApp/logon.jsp";
   tokenParam = "ivsLogonToken=" + logonToken;
   redirectURL = infoViewURL + "&" + tokenParam;
   response.sendRedirect(redirectURL);
%>
The problem is I don't know where to put this code in the opendoc.jsp file.
I tried to create a custom OpenDoc.jsp with a above code, leaving the original opendoc.jsp as it is. And used this custom jsp file in the opendoc url. This is taking me to Infoview login page and I see taht a token is created at the end of the url but it is not passed.
Can somebody help me to understand where exactly to put this code in the opendoc.jsp and any correction to this code or additional steps to get it working.
Any help is greatly appreciated!

The code above is meant to redirect you to InfoView. Change the last bit of code as follows:
//add any opendocument parameters to the URL here
openDocURL = "http://server:8080/OpenDocument/opendoc/openDocument.jsp"
tokenParam = "token=" + logonToken;
redirectURL = openDocURL + "&" + tokenParam;
response.sendRedirect(redirectURL);

Similar Messages

  • Help on generating token for opendoc url in XI3.1

    Hi Guys,
    I am trying to get some help in generating token for opendoc url to avoid login while trying to access a report in Infoview.
    From a previous post I got this code:
    <%@ page import="com.crystaldecisions.sdk.framework.*" %>
    <%@ page import="com.crystaldecisions.sdk.exception.SDKException" %>
    <%@ page import="com.crystaldecisions.sdk.occa.security.*" %>
    <%
    boolean loginSuccessful = false;
    IEnterpriseSession boEnterpriseSession = null;
    String username = "Administrator";
    String password = "pwd";
    String cmsname = "CMS";
    String authenticationType = "secEnterprise";
    try {
    //Log in.
    boEnterpriseSession = CrystalEnterprise.getSessionMgr().logon( username, password, cmsname, authenticationType);
    if (boEnterpriseSession == null) {
    out.print("Unable to login.");
    } else {
    loginSuccessful = true;
    } catch (SDKException sdkEx) {
    out.print("ERROR ENCOUNTERED
    " + sdkEx + "");
    if (loginSuccessful) {
    ILogonTokenMgr boLogonTokenMgr = boEnterpriseSession.getLogonTokenMgr();
    String logonToken = boLogonTokenMgr.createLogonToken("", 60, 1);
    String infoViewURL = null;
    String tokenParam = null;
    String redirectURL = null;
    infoViewURL = "http://server:8080/InfoViewApp/logon.jsp";
    tokenParam = "ivsLogonToken=" + logonToken;
    redirectURL = infoViewURL + "&" + tokenParam;
    response.sendRedirect(redirectURL);
    %>
    The problem is I don't know where to put this code in the opendoc.jsp file.
    I tried to create a custom OpenDoc.jsp with a above code, leaving the original opendoc.jsp as it is. And used this custom jsp file in the opendoc url. This is taking me to Infoview login page and I see taht a token is created at the end of the url but it is not passed.
    Can somebody help me to understand where exactly to put this code in the opendoc.jsp and any correction to this code or additional steps to get it working.
    Any help is greatly appreciated

    Stratos,
      Thanks for your inputs,
      I changed the code as you suggested , now my whole code looks like :
    <%@ page import="com.crystaldecisions.sdk.framework.*" %>
    <%@ page import="com.crystaldecisions.sdk.exception.SDKException" %>
    <%@ page import="com.crystaldecisions.sdk.occa.security.*" %>
    <%
    boolean loginSuccessful = false;
    IEnterpriseSession boEnterpriseSession = null;
    String username = "user";
    String password = "Password";
    String cmsname  = "Server";
    String authenticationType = "secEnterprise";
    try {
       //Log in.
       boEnterpriseSession = CrystalEnterprise.getSessionMgr().logon( username, password, cmsname, authenticationType);
       if (boEnterpriseSession == null) {
          out.print("<FONT COLOR=RED><B>Unable to login.</B></FONT>");
       } else {
          loginSuccessful = true;
    } catch (SDKException sdkEx) {
       out.print("<FONT COLOR=RED><B>ERROR ENCOUNTERED</B><BR>" + sdkEx + "</FONT>");
    if (loginSuccessful) {
       ILogonTokenMgr boLogonTokenMgr = boEnterpriseSession.getLogonTokenMgr();
         String logonToken = boLogonTokenMgr.createLogonToken("", 60, 1);
         //String logonToken = boLogonTokenMgr.getDefaultToken();
       String infoViewURL = null;
       String tokenParam = null;
       String redirectURL = null;
       infoViewURL = "http://Server:8080/InfoViewApp/logon.jsp";
       tokenParam = "ivsLogonToken=" + logonToken;
       redirectURL = infoViewURL + "&" + tokenParam;
       pageContext.forward( "openDocument.jsp?iDocID=" + 4668 + "&token=" + tokenParam);
    %>
    But I am still getting the Infoview Login Page . The url on the login page is
    http://server:8080/OpenDocument/opendoc/logonTrustedAuth.do?appKind=InfoView&iDocID=4668&isApplication=true&token=ivsLogonToken%server%3A6400%4021181JIipxt70VM0kd90v21179JFd4dHn7kW2FKSBi
    We can see that a token is being generated and appended to this url but it is not passing the user name and password.
    Please let me know what you think about this.

  • Generating token for javacard framework?

    Hi,
    I am implementing JCRE and it needs to support all APIs that are specified by Oracle JCRE.
    It means that beside the coding/ implementation of each class and method, My framework needs to have tokens of each class, method and field as same as tokens of corresponding Oracle API classes, methods and fields.
    I don't know if there is a special rule to set token for each framework related item? Or Tokens will be changed if there are changes in framework?
    thanks,

    Stratos,
      Thanks for your inputs,
      I changed the code as you suggested , now my whole code looks like :
    <%@ page import="com.crystaldecisions.sdk.framework.*" %>
    <%@ page import="com.crystaldecisions.sdk.exception.SDKException" %>
    <%@ page import="com.crystaldecisions.sdk.occa.security.*" %>
    <%
    boolean loginSuccessful = false;
    IEnterpriseSession boEnterpriseSession = null;
    String username = "user";
    String password = "Password";
    String cmsname  = "Server";
    String authenticationType = "secEnterprise";
    try {
       //Log in.
       boEnterpriseSession = CrystalEnterprise.getSessionMgr().logon( username, password, cmsname, authenticationType);
       if (boEnterpriseSession == null) {
          out.print("<FONT COLOR=RED><B>Unable to login.</B></FONT>");
       } else {
          loginSuccessful = true;
    } catch (SDKException sdkEx) {
       out.print("<FONT COLOR=RED><B>ERROR ENCOUNTERED</B><BR>" + sdkEx + "</FONT>");
    if (loginSuccessful) {
       ILogonTokenMgr boLogonTokenMgr = boEnterpriseSession.getLogonTokenMgr();
         String logonToken = boLogonTokenMgr.createLogonToken("", 60, 1);
         //String logonToken = boLogonTokenMgr.getDefaultToken();
       String infoViewURL = null;
       String tokenParam = null;
       String redirectURL = null;
       infoViewURL = "http://Server:8080/InfoViewApp/logon.jsp";
       tokenParam = "ivsLogonToken=" + logonToken;
       redirectURL = infoViewURL + "&" + tokenParam;
       pageContext.forward( "openDocument.jsp?iDocID=" + 4668 + "&token=" + tokenParam);
    %>
    But I am still getting the Infoview Login Page . The url on the login page is
    http://server:8080/OpenDocument/opendoc/logonTrustedAuth.do?appKind=InfoView&iDocID=4668&isApplication=true&token=ivsLogonToken%server%3A6400%4021181JIipxt70VM0kd90v21179JFd4dHn7kW2FKSBi
    We can see that a token is being generated and appended to this url but it is not passing the user name and password.
    Please let me know what you think about this.

  • How and what is generating response for an url ending with infoobject.cwr ?

    See the attached file first.
    I'm trying to find how the response is generated when i click on the notification tab. With firebug, i know that the request URL is :
    businessobjects/enterprise115/admin/en/infoobject.cwr?&action=-10005&cmd=notification&id=245228
    action     -10005
    cmd     notification
    id     245228
    I'm trying to figure out where and how the response is generated. I can't find any mapping to a servlet  corresponding to "infoobject.cwr".

    Hi, ilplvm,
    Calling directly into InfoView or InfoObjects is not supported or documented. If you'd like to access reports using URLs, then you can use "OpenDocument" [UR L  Reporting|http://help.sap.com/businessobject/product_guides/boexir31/en/xi3-1_url_reporting_opendocument_en.pdf]
    That doc, along with documentation on our SDK's is found in our [Developer Library|http://www.sdn.sap.com/irj/boc/sdklibrary].
    Regards,
    Bryan

  • Close button for opendoc url

    hi,
       I m planning to give a URL to my end users which they will click to view the last instance of my scheduled report. Here I want my users to close the document or instance they are viewing and get back to the list of other instance it has.
    Please help me.

    Hi Kerry
    For a Close button in a .EXE it should be pretty simple. Just
    configure the project to close when it ends (Edit >
    Preferences... > Project node > Start and End node). Then
    make the last slide pretty short. Configure your button to point to
    the last slide.
    Cheers... Rick

  • Im trying to make a purchase on a gaming app. It's a 50 dollar purchase of diamonds(tokens) for a game called warrior's 3, and for some reason it's not going through this is the fourth time this has happened to me and every time you say just wait thirty

    I've already gone into my settings and checked billing info and it's correct. Can you please help I don't want to wait till morning when Apple is open again finally.

    Who says 'wait thirty' ? We are fellow users here on these forums, you're not talking to iTunes Support nor Apple
    What do you mean by 'not going through' ? If you are getting an error message then what does it say ?
    If you are getting a message to contact iTunes Support then you will need to do so : http://www.apple.com/support/itunes/contact/ - click on Contact iTunes Store Support on the right-hand side of the page, then Purchases, Billing & Redemption
    If it's a different problem ... ?

  • Generate Calendar for Cumulations

    Hi Guru's,
    Can u explain clearly what does this step means Generate Calendar for Cumulations  I have read this step many times in F1 help but i couldn't get the correct information. Can u please explain in detail where it is used.
    Thanks & Regards,
    Ravi

    Hi,
    use the report RPUCTP10 (Generate calendar for cumulations and deductions) to define the assignment of payroll periods.
    Ex: this we will use this report for deduction like I want to deduct wage type amount quarterly basis,  the wage type amount in  IT0014 accordingly time intervals  (for example, monthly, quarterly, half-yearly or yearly).
    For this deduction and cumulation we need to define the payment models and periodicities, for that payment models we have to assign the period parameters like monthly, quarterly, half-yearly or yearly.
    This payment model again we have to assign MODDE feature.
    If do you want understand easily go to path:
    Personnel Management-> PA->Payroll Data->Recurring Payments and Deductions->Payment Models-> Define deduction periods - before this node we have to generate the RPUCTP10 program.
    Regards
    Devi

  • Exact Steps to Generate Installation keys for other systems In SolMgr4.0

    Hi friends,
    Please provide me exact Steps to Generate Installation keys for other systems In SolMgr 4.0 SR1.
    I have steps to make this thing in solmgr 3.2 as please change as it in solmgr4.0 sr1
    txn SMSY
    Expand Landscape components -> Systems
    Right click on Systems  ->New System
    Type SAPID, & Installation No. (S44 , 0040099252) & sAVE
    Expand Newly Added system
    Right Click & Create
    Now we can use the key provided by the system.
    Please make required changes as applicable in solmgr4.0 So that I can proceed.
    Also clear vat is the difference between ECC & ERP as solmgr4.0 mention both as two systems.
    Thanks & regards
    Jaswant
    +91 9949676055
    Cheers 'N' Joyce

    Hi Jaswant,
    to generate a Solution Manager Key you can process a little bit easier.
    Call transaction SMSY, press shift+F5 (you get the "other objects" popup).
    As System enter the SID of your Solution Manager.
    ->select gen.Installation/Upgrade Key (shiftctrlF10))
    then you get a new popup. In this popup you DELETE all values, enter SID of the new system, the message server of the new system and the system number of the new system. Then press generate key.
    With this procedure you do not have to add the system to SMSY to generate the key.
    Later you should add it to SMSY, maybe you have added an SLD to SMSY then the system will be added automatically. If not you have to add it manually.
    Second question ERP <> ECC
    Good question, ECC is part (a main instance) of ERP, so it is up to you if you classify your system as an ERP or ECC.
    Regards,
    Udo Lang

  • Creating an Opaque view for generating the Action Link URL in OBIEE EBS int

    Do we have to Creating an Opaque view for generating the Action Link URL in OBIEE Oracle E-Business Suite integration if we are not using BI Applications(DAC). We built our Repository on Materialized views we were using with Discoverer so I'm not sure if we have to do the part that creates an Opaque view in our integration of EBS 11i with OBIEE.
    Thanks in advance.
    Leo

    Hi Leo,
    This is an example from an standard Oracle repository:
    select header_id , line_id, fnd_run_function.get_run_function_url(
    CAST(fnd_function.get_function_id('ISC_ORDINF_DETAILS_PMV') AS NUMBER),
    CAST( 'VALUEOF(NQ_SESSION.RESP_APPL_ID)' AS NUMBER),
    CAST( 'VALUEOF(NQ_SESSION.RESP_ID)' AS NUMBER),
    CAST( 'VALUEOF(NQ_SESSION.SEC_GROUP_ID)' AS NUMBER),
    'HeaderId=' || header_id ||'&pFunctionName=ISC_ORDINF_DETAILS_PMV&pMode=NO&pageFunctionName=ISC_ORDINF_DETAILS_PMV',
    null ) LINK
    FROM isc_book_sum2_f
    They use it in an opaque view, so you can reference session variables for login based on your responsibility.
    Good Luck,
    Daan Bakboord
    http://www.obi-forumlive.nl/

  • Weblogic does not call the ProxySelector class for http url

    We are using weblogic server for our project. I have created a ProxySelector class and made it the default in my code. When my code tried to access the external url, the ProxySelector is called for socket url but not http url. Because of this, I am not able to return any HTTP proxy object from the ProxySelector and it fails.
    Note: The code works fine if I execute it from tomcat.

    Hi This is the method that I have for invoking webservices. It uses a Dispatch API. The myProxySelector is an instance of MyProxySelector which is already made defult in the appication startup.
    This MyProxySelector has a threadlocal variable useProxy to indicate whether the proxy should be used or not. so I am setting the variable just before reply = dispatch.invoke(sm);
    public class WebServiceDispatch {
    public Object invoke() throws GLException {
    Object result = null;
    try {
    Service service = Service.create(getOperation().getServiceName());
    service.addPort(getOperation().getOperationName(), SOAPBinding.SOAP11HTTP_BINDING, call.getServiceEndpoint());
    Dispatch<SOAPMessage> dispatch = service.createDispatch(getOperation().getOperationName(), SOAPMessage.class, Service.Mode.MESSAGE);
    initHandlers(dispatch);
    Map<String, Object> ctx = dispatch.getRequestContext();
    if (call.useWSS()) {
    ctx.put(SOAPConstants.WSSE_SECURITY, new WSSHeader(getCredentials().getUsername(), getCredentials().getPassword(), call.sendEncryptedPassword()));
    } else if (call.getCredentials() != null ) {
    String user = getCredentials().getUsername();
    if ( user != null ) {
    ctx.put(Dispatch.USERNAME_PROPERTY, user);
    if (getCredentials().getPassword() != null ) {
    if (call.sendEncryptedPassword()) {
    ctx.put(Dispatch.PASSWORD_PROPERTY, getCredentials().getPassword().getEncryption());
    } else {
    ctx.put(Dispatch.PASSWORD_PROPERTY, getCredentials().getPassword().getText());
    MessageFactory mf = MessageFactory.newInstance();
    SOAPMessage sm = mf.createMessage();
    SOAPHeader sh = sm.getSOAPHeader();
    SOAPBody sb = sm.getSOAPBody();
    for ( Iterator<?> it = call.getOperation().getOrderedParameters().iterator(); it.hasNext(); ) {
    WebServiceParameter parameter = (WebServiceParameter) it.next();
    if (parameter.isBodyParam()) {
    sb.addChildElement((SOAPElement)call.getParameterValue(parameter));
    } else {
    sh.addChildElement((SOAPElement)call.getParameterValue(parameter));
    String endPoint = call.getServiceEndpoint();
    myProxySelector.setUseProxy(useProxyServer);
    if (getOperation().getReturn() != null) {
    reply = dispatch.invoke(sm);
    result = getReplyElement(reply);
    call.setParameterValue(getOperation().getReturn(), result);
    } else {
    dispatch.invokeOneWay(sm);
    } catch (Throwable t) {
    throw GLException.factory(new CausedBy("Error Invoking Web Service Dispatch"),t);
    return result;
    .........// more code to get webservice details from db and load useProxyServer flag value
    Here is the ProxySelector code
    public class MyProxySelector extends ProxySelector {
    protected ThreadLocal<Boolean> useProxy = new ThreadLocal<Boolean>();
         public ThreadLocal<Boolean> getUseProxy() {
              return useProxy;
         public void setUseProxy(boolean useProxy) {
              setUseProxy(useProxy? Boolean.TRUE: Boolean.FALSE);
         public void setUseProxy(Boolean useProxy) {
              this.useProxy.set(useProxy);
         private ProxySelector jvmDefaultSelector = null;
         public ProxySelector getJVMDefaultSelector() {
              return jvmDefaultSelector;
         private static MyProxySelector myProxySelector = null;
         private MyProxySelector(ProxySelector jvmDefaultSelector) {
              this.jvmDefaultSelector = jvmDefaultSelector;
         public static MyProxySelector getInstance() {
              if(myProxySelector==null) {
                   myProxySelector = new MyProxySelector(ProxySelector.getDefault());
              return myProxySelector;
         @Override
         public List<Proxy> select(URI uri) {
              try {
                   if (uri == null) {
                        throw new IllegalArgumentException("URI can't be null.");
                   Boolean useProxyObject = useProxy.get();
                   if(useProxyObject == null) {
                        String protocol = uri.getScheme();
                        if ("http".equalsIgnoreCase(protocol) || "https".equalsIgnoreCase(protocol)) {
                             return getProxyList();
                        } else if(jvmDefaultSelector != null) {
                             return jvmDefaultSelector.select(uri);;
                   if(useProxyObject.booleanValue()) {
                        String protocol = uri.getScheme();
                        if ("http".equalsIgnoreCase(protocol) || "https".equalsIgnoreCase(protocol)) {
                             return getProxyList();
              } catch(Exception e) {
              } finally {
                   if (useProxy != null) {
                        useProxy.remove();
              return getNoProxyList();
         @Override
         public void connectFailed(URI uri, SocketAddress sa, IOException ioe) {
              if (uri == null || sa == null || ioe == null) {
                   throw new IllegalArgumentException("Arguments can't be null.");
              if (jvmDefaultSelector != null) {
                   jvmDefaultSelector.connectFailed(uri, sa, ioe);
    private static final String PROXY_HOST = "glog.integration.http.proxyHost";
    private static String httpProxyHost = GLProperties.get().getProperty(PROXY_HOST);
    private static final String PROXY_PORT = "glog.integration.http.proxyPort";
    private static String httpProxyPort = GLProperties.get().getProperty(PROXY_PORT);
    private static ArrayList getNoProxyList() {
              ArrayList noProxyList = new ArrayList<Proxy>();
              noProxyList.add(Proxy.NO_PROXY);
              return noProxyList;
    private static ArrayList getProxyList() {
         Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(httpProxyHost, Integer.parseInt(httpProxyPort)));
              ArrayList proxyList = new ArrayList<Proxy>();
              proxyList.add(proxy);
              return proxyList;
    public static class Startup implements StartupShutdown {
    public void load(T2SharedConnection conn) throws GLException {}
    public void activate(T2SharedConnection conn) throws GLException {
         ProxySelector.setDefault(getInstance());
    public void unload() throws GLException {}
    Edited by: pshivrat on Sep 3, 2010 10:09 PM

  • Error while creating a deployable proxy for a URL in NWDS

    Hi ,
    There is a requirement for calling a webservice in the .NET platform from JAVA using NWDS. The webservice of the server is pinged using the URL of the webservice. when the URL is passed in the WS navigator of CRD ( that is Development Server) ,  the response is retreived successfully .  The version of NWDS is 7.0.23.
    we are facing problem when we are trying to create a Deployable proxy in NWDS by using the following steps :
    1) Create a Development Component
    2) Select the Deployable Proxy
    3) Create the Client Proxy Defintion of the created DC
    At step 3 , when we giving the url or WSDL link  like "http:// www3.authoring.syngenta/newswebservice.asmx?WSDL" (this is just for example) , it is showing as "Invalid wsdl or wsdl not found " . so  that we are not able to procees further.
    When we are trying to create proxy the for the WSDL link like " http:// www.authoring.syngenta/newswebservice.asmx?WSDL" , we are able to create successfully.
    can anyone suggest why we are able to create the proxy for the URL "http:// www.authoring.syngenta/newswebservice.asmx?WSDL" and not for the other URL.
    Any pointers or suggestions are very helpful.
    Thanks and Regards,
    Sreedevi

    Late response I know, but I have solved a similar problem recently and thought I would share.
    Firstly, the problem is not with the namespace. The "Namespace ..." part is just stating the namespace the "Incorrect Value" has. So this error is complaining about the value "Unknown" - which isn't very helpful.
    It appears the SAP SE80 importer does not like elements like the following because it can't understand <s:element ref="s:schema" />. It appears this is a common thing to be included in .NET generated WSDLs.
     <s:element minOccurs="0" maxOccurs="1" name="GetCursDynamicResult">      <s:complexType>          <s:sequence>               <s:element ref="s:schema" />               <s:any />          </s:sequence>     </s:complexType></s:element> 
    SAP will also not like this example as it does not support mixed content (see: http://www.w3schools.com/schema/schema_complex_mixed.asp)
    <s:element minOccurs="0" maxOccurs="1" name="SaldoXMLResult">
         <s:complexType mixed="true">
              <s:sequence>
                   <s:any />
              </s:sequence>
         </s:complexType>
    </s:element>
    You can "Fix" the problem in both cases by removing the offending text in a local copy of the WSDL file so remove line 4 in the first example and change line 2 in the second to <s:complexType> the proxy can then be generated. No idea if the resulting service will be fully operational though!

  • How to use an authenticated user for a proxy call

    Dear all,
    I am currently working on a JEE application where the user needs to authenticate (for this I have configured the web.xml).
    Now inside this application I need to do a proxy call to a PI webservice.
    I would like to use the user credentials of the already logged in user in order to call the proxy.
    What I don't want to do is to use a service user for the proxy call.
    The code I am trying to call looks something like this:
         private IntegratedConfigurationIn getPort() throws Exception{
              IntegratedConfigurationIn port = null;
              try {
                   IntegratedConfigurationInService service = null;
                   service = new IntegratedConfigurationInService();
                   port = (IntegratedConfigurationIn) service.getIntegratedConfigurationIn_Port();
                  BindingProvider bp = (BindingProvider)port;
                  bp.getRequestContext().put(BindingProvider.USERNAME_PROPERTY, user);
                  bp.getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, password);
                  if (url.length() != 0)
                       bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, url);
              catch (Exception ex){
                   ex.printStackTrace();
              return port;
    The examples I found to retrieve the userdata pointed to codes similar to this one:
    public HttpServletRequest getHttpRequest() throws Exception {
              // Get runtime context
              Properties props = new Properties();
              props.put("domain", "true");
              Context initialContext = new InitialContext(props);
              ApplicationWebServiceContext wsContext = (ApplicationWebServiceContext) initialContext
                        .lookup(" /wsContext/ApplicationWebServiceContext");
              HttpServletRequest req = wsContext.getHttpServletRequest();
              return req;
    com.sap.security.api.IUser sapUser = com.sap.security.api.UMFactory.getAuthenticator().getLoggedInUser(getHttpRequest(), null);
              IUser ep5User = com.sapportals.wcm.util.usermanagement.WPUMFactory.getUserFactory().getEP5User(sapUser);
    Now I don't know how to bring it togehter and how to use an authenticated user for the BindingProvider.
    I would appreciate any hints or ideas.

    Peter,
    from the first screenshot, what I understood is that, you are calling an inbound PI web service that is intended to create an integrated configuration object (this is used for whole lot of other reason completely) but not actually calling a development web service.
    For this, you would have to generate your client classes from the WSDL provided by the PI developer for that particular service. Once you get those client classes generated, you could used the method provided in the other screenshot to extract the user and password and call the intended web service.
    Vijay Konam

  • Strange response time for an RFC call viewed from STAD on R/3 4.7

    Hello,
    On our R/3 4.7 production system, we have a lot of external RFC calls to execute an  abap module function. There are 70 000 of these calls per day.
    The mean response time for this RFC call is 35 ms.
    Some times a few of them (maybe 10 to 20 per day) are way much longer.
    I am currently analysing with STAD one of these long calls  which lasted 10 seconds !
    Here is the info from STAD
    Response time :                10 683 ms
    Total time in workprocess : 10 683 ms
    CPU time  :                               0 ms
    RFC+CPIC time :                       0 ms
    Wait for work process           0 ms
    Processing time           10.679 ms
    Load time                            1 ms
    Generating time                   0 ms
    Roll (in) time                        0 ms
    Database request time         3 ms
    Enqueue time                      0 ms
    Number      Roll ins            0
                     Roll outs           0
                     Enqueues         0
    Load time   Program             1  ms
                      Screen              0  ms
                     CUA interf.          0  ms
    Roll time    Out                 0  ms
                      In                  0  ms
                    Wait                0  ms
    Frontend    No.roundtrips       0   
                      GUI time            0  ms
                      Net time            0  ms
    There is nearly no abap processing in the function module.
    I really don't uderstand what is this  10 679 ms processing time especially with 0 ms cpu time and 0 ms wait time.
    A usual fast RFC call gives this data
    23 ms response time
    16 ms cpu time
    14 ms processing time
    1 ms load time
    8 ms Database request time
    Does anybody have an idea of what is the system doing during the 10 seconds  processing time ?
    Regards,
    Olivier

    Hi Graham,
    Thank you for your input and thoughts.
    I will have to investigate on RZ23N and RZ21 because I'm not used to use them.
    I'm used to investigate performance problems with ST03 and STAD.
    My system is R/3 4.7 WAS 6.20. ABAP and BASIS 43
    Kernel 6.40 patch level 109
    We know these are old patch levels but we are not allowed to stop this system for upgrade "if it's not broken" as it is used 7/7 24/24.
    I'm nearlly sure that the problem is not an RFC issue because I've found other slow dialog steps for web service calls and even for a SAPSYS technical dialog step  of type <no buffer>. (what is this ?)
    This SAPSYS dialog step has the following data :
    User : SAPSYS
    Task type : B
    Program : <no buffer>
    CPU time                       0 ms
    RFC+CPIC time              0 ms
    Total time in workprocs    5.490 ms
    Response time               5.490 ms
    Wait for work process           0 ms
    Processing time             5.489 ms
    Load time                            0 ms
    Generating time                   0 ms
    Roll (in+wait) time                0 ms
    Database request time          1 ms ( 3 Database requests)
    Enqueue time                       0 ms
    All hundreds of other SAPSYS <no buffer> steps have a less than 5 ms response time.
    It looks like the system was frozen during 5 seconds...
    Here are some extracts from STAD of another case from last saturday.
    11:00:03     bt1fsaplpr02_PLG RFC     R     3     USER_LECKIT     13     13     0     0
    11:00:03     bt1sqkvf_PLG_18      RFC     R     4     USER_LECDIS     13     13     0     0
    11:00:04     bt1sqkvh_PLG_18      RFC     R     0     USER_LECKIT     19     19     0     16
    11:00:04     bt1sqkvf_PLG_18      RFC     R     4     USER_LECKIT     77     77     0     16
    11:00:04     bt1sqkve_PLG_18      RFC     R     4     USER_LECDIS     13     13     0     0
    11:00:04     bt1sqkvf_PLG_18      RFC     R     4     USER_LECDIS     14     14     0     16
    11:00:05     bt1sqkvg_PLG_18      RFC     R     0     USER_LECKIT     12     12     0     16
    11:00:05     bt1sqkve_PLG_18      RFC     R     4     USER_LECKIT     53     53     0     0
    11:00:06     bt1sqkvh_PLG_18      RFC     R     0     USER_LECKIT     76     76     0     0
    11:00:06     bt1sqk2t_PLG_18      RFC     R     0     USER_LECDIS     20     20     0     31
    11:00:06     bt1sqk2t_PLG_18      RFC     R     0     USER_LECKIT     12     12     0     0
    11:00:06     bt1sqkve_PLG_18      RFC     R     4     USER_LECKIT     13     13     0     0
    11:00:06     bt1sqkvf_PLG_18      RFC     R     4     USER_LECKIT     34     34     0     16
    11:00:07     bt1sqkvh_PLG_18      RFC     R     0     USER_LECDIS     15     15     0     0
    11:00:07     bt1sqkvg_PLG_18      RFC     R     0     USER_LECKIT     13     13     0     16
    11:00:07     bt1sqk2t_PLG_18      RFC     R     0     USER_LECKIT     19     19     0     0
    11:00:07     bt1fsaplpr02_PLG RFC     R     3     USER_LECKIT     23     13     10     0
    11:00:07     bt1sqkve_PLG_18      RFC     R     4     USER_LECDIS     38     38     0     0
    11:00:08     bt1sqkvf_PLG_18      RFC     R     4     USER_LECKIT     20     20     0     16
    11:00:09     bt1sqkvg_PLG_18      RFC     R     0     USER_LECDIS     9 495     9 495     0     16
    11:00:09     bt1sqk2t_PLG_18      RFC     R     0     USER_LECDIS     9 404     9 404     0     0
    11:00:09     bt1sqkvh_PLG_18      RFC     R     1     USER_LECKIT     9 181     9 181     0     0
    11:00:10     bt1fsaplpr02_PLG RFC     R     3     USER_LECDIS     23     23     0     0
    11:00:10     bt1sqkve_PLG_18      RFC     R     4     USER_LECKIT     8 465     8 465     0     16
    11:00:18     bt1sqkvh_PLG_18      RFC     R     0     USER_LECKIT     18     18     0     16
    11:00:18     bt1sqkvg_PLG_18      RFC     R     0     USER_LECKIT     89     89     0     0
    11:00:18     bt1sqk2t_PLG_18      RFC     R     0     USER_LECKIT     75     75     0     0
    11:00:18     bt1sqkvh_PLG_18      RFC     R     1     USER_LECDIS     43     43     0     0
    11:00:18     bt1sqk2t_PLG_18      RFC     R     1     USER_LECDIS     32     32     0     16
    11:00:18     bt1sqkvg_PLG_18      RFC     R     1     USER_LECDIS     15     15     0     16
    11:00:18     bt1sqkve_PLG_18      RFC     R     4     USER_LECDIS     13     13     0     0
    11:00:18     bt1sqkve_PLG_18      RFC     R     4     USER_LECDIS     14     14     0     0
    11:00:18     bt1sqkvf_PLG_18      RFC     R     4     USER_LECKIT     69     69     0     16
    11:00:18     bt1sqkvf_PLG_18     RFC     R     5     USER_LECDIS     49     49     0     16
    11:00:18     bt1sqkve_PLG_18     RFC     R     5     USER_LECKIT     19     19     0     16
    11:00:18     bt1sqkvf_PLG_18     RFC     R     5     USER_LECDIS     15     15     0     16
    The load at that time was very light with only a few jobs starting :
    11:00:08 bt1fsaplpr02_PLG RSCONN01                     B 31 USER_BATCH     39
    11:00:08 bt1fsaplpr02_PLG RSBTCRTE                     B 31 USER_BATCH     34
    11:00:08 bt1fsaplpr02_PLG /SDF/RSORAVSH                B 33 USER_BATCH     64
    11:00:08 bt1fsaplpr02_PLG RSBTCRTE                     B 33 USER_BATCH     43
    11:00:08 bt1fsaplpr02_PLG RSBTCRTE                     B 34 USER_BATCH     34
    11:00:08 bt1fsaplpr02_PLG RSBTCRTE                     B 35 USER_BATCH     37
    11:00:09 bt1fsaplpr02_PLG RVV50R10C                    B 34 USER_BATCH     60
    11:00:09 bt1fsaplpr02_PLG ZLM_HDS_IS_PURGE_RESERVATION B 35 USER_BATCH    206
    I'm thinking also now about the message server as there is load balancing for each RFC call ?
    Regards,
    Olivier

  • Generating EWA for JAVA

    Hello,
    I need to generate an EWA report for a JAVA stack.
    I have an ABAP + JAVA system for which I've configured SMD.
    The SETUP (Diagnostic Setup-->Managed Sytems) has been executed successfully.
    In SMSY I've created a JAVA component for the system.
    The ABAP EWA runs fine.
    However, no JAVA report in generated in DSWP.
    Will the report be generated seperately for the 2 stacks in DSWP?
    Also, when I try to manually generate it in the Trubleshooting tab on the SMD webpage,
    I just get an XML page.
    Pls. help.
    Thanks,
    Have a nice weekend,
    Saba.

    #976054
    2.2     Data Retrieval (Java)
    Technically, the Java part of the Data Retrieval process is transparent to the user and typically requires no further configuration. However, it does offer a direct interface to access the data retrieved for the EWA, bypassing the ABAP Data Retrieval infrastructure. In particular, it can be accessed by the Service Cockpit of the SMD directly for maintenance and error detection.
    2.2.1     The Service Cockpit
    The Service Cockpit can be reached under the following URL: http://<SMD Host>:<SMD Port>/smd/services. Its role is to provide a graphical UI to the Data Provider.
    2.2.3     Configuration
    All services, for which the data provider can retrieve data, are configured centrally through a configuration XML. The section u201CConfigurationu201D allows you to display this XML, download it for editing and upload a newer version if required.
    2.2.4     Service Download
    The actual retrieval of the data for the selected service (e.g. the EWA) can be triggered manually in section u201CService Downloadu201D. This will trigger the same processes as the external call from the ABAP side through the CSDCCN. The purpose of this functionality is to quickly allow access the data collected for the EWA and other services even without the ABAP data retrieval infrastructure. 
    Selecting the button u201CStart Serviceu201D will trigger the data retrieval of all relevant data for the selected service and the selected system.

  • Problem with opendoc url.

    hi experts,
    i am having a problem with opendoc url in my dashboard.my url is to open a webi report depends on two prompts given by the user.
    i am using the following url and it is working fine.
    http://sysname:port/OpenDocument/opendoc/openDocument.jsp?sType=wid&sRefresh=Y&iDocID=123456&mode=full&nbPrompts=2&lsSEnter Year=Prompt1&lsSEnter Dealer=prompt2.
    when i am entering a value for prompt2 like "krishna distributors" its working fine.but the problem here is whenever i am entering a value for the second prompt with a value like (ex:) "ravi & ravi distributors" its giving an message "NO DATA TO RETRIEVE"  because it is considering the & symbol in my prompt2 as another parameter as shown below.
    http://sysname:port/OpenDocument/opendoc/openDocument.jsp?sType=wid&sRefresh=Y&iDocID=123456&mode=full&nbPrompts=2&lsSEnter Year=Prompt1&lsSEnter Dealer=ravi & ravi distributor
    can anyone help me on this.
    thanks in advance,
    ravi kishore yarramsetti.

    Hi Ravi,
    In Excel , & considers as "Concatenation. So it will not work properly. To make this work, use Dealer Number instead of Dealer name in ur example.
    Eg:
    Dealer Name                           Dealer Number
    ravi & ravi distributors            D10001
    krishna distributors                 D10002
    If you use Dealer Number "D10001" you can get "ravi & ravi distributors " Information. In ur Dashboard Design, if the user clicks "ravi & ravi distributors" then pass "D10001" to the Opendoc and generate the report.
    Try to not use which has special characters as the prompt in Xcelsius.
    Thanks,
    Muthukumar A.S.

Maybe you are looking for

  • Line by Line Tax Calculation

    Hi Freinds, I want to see line by line tax calculation on document level at the time of postings. i have made a required settings but now system always prompt for Tax Jurisdiction. Earlier system was not asking for Tax Jurisdiction at posting level.

  • How to check my Blackberry 9360 Wtty?

    I loss the receipt and my wtty card without shop chop... How to check my set wtty?

  • Error install illustrator cc please help!!

    error install illustrator cc please help!!

  • Package Database, AUR, and Wiki Search - Chromium Extension

    I made a Chromium (Google Chrome) Extension to search the package database, AUR, and the wiki. You can search from the extension's icon or by right-clicking on highlighted text. (I've found this feature the most useful) There are many configurable op

  • Implmenting Master Detail using dropdown box

    I am getting an exception when using a dropdown box and datatable to implement Master/Detail using the Pointbase db. I followed the directions provided in the tutorial, "Using Databound Components to Access Databases". I also used the code snipets su