How to log Exceptions raised in CAF Application Services

Hi All,
When there is an Exception rasing in CAF Application Service custom method implementation what are the steps need to follow for send that exception details to log files & where those log files will be generated i.e either in server, local system, etc.
If we use following 2 different lines please explain me where that trace is going to written:
1) System.out.println(e);
2) e.printStackTrace();
Thanks in Advance,
Uday.

Hi Uday,
Try this (in my case I'm using that in Background CO that implements IGPBackgroundCallableObject ):
     public static Location logger =
          Location.getLocation(<yourClass>.class);
Catch block:
          } catch (GPInvocationException e) {
               throw new GPTechnicalCallableObjectException(
                    logger,
                    resourceAccessor,
                    "ERROR_PARAMETERS",
                    e);
          } catch (GPEngineException e) {
               throw new GPTechnicalCallableObjectException(
                    logger,
                    resourceAccessor,
                    e.getMessage(),
                    e);
Reward points if it's helpful.

Similar Messages

  • Exception in CAF application service

    Hi All
    I am trying to access the BAPI bapi__mddataset__get__axis__info
    from a CAF application service. But receive following exception. Any clue how to solve it.
    at com.sap.caf.rt.bol.da.remote.MessageEntityConverter.createNewInstance(MessageEntityConverter.java:788)
         at com.sap.caf.rt.bol.da.remote.MessageEntityConverter.retrieveElementValue(MessageEntityConverter.java:494)
         at com.sap.caf.rt.bol.da.remote.MessageEntityConverter.retrieveMessageValue(MessageEntityConverter.java:447)
         at com.ibm.cer_test.extsrv.MPConnector.process(MPConnector.java:65)
         at com.ibm.cer_test.extsrv.bapi__mddataset__get__axis__info.BAPI__MDDATASET__GET__AXIS__INFOBean.BAPI__MDDATASET__GET__AXIS__INFO(BAPI__MDDATASET__GET__AXIS__INFOBean.java:40)
         at com.ibm.cer_test.extsrv.bapi__mddataset__get__axis__info.BAPI__MDDATASET__GET__AXIS__INFOLocalLocalObjectImpl0.BAPI__MDDATASET__GET__AXIS__INFO(BAPI__MDDATASET__GET__AXIS__INFOLocalLocalObjectImpl0.java:115)
         at com.ibm.cer_test.appsrv.mdapp.MdAppBean.getMdDataSet(MdAppBean.java:295)
         at com.ibm.cer_test.appsrv.mdapp.MdAppLocalLocalObjectImpl0.getMdDataSet(MdAppLocalLocalObjectImpl0.java:115)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at com.sap.caf.rt.services.serviceaccess.ServiceWrapper.findByDataObject(ServiceWrapper.java:269)
         at com.sap.caf.rt.services.serviceaccess.CAFServiceAccessBeanImpl.findByDataObject(CAFServiceAccessBeanImpl.java:223)
         at com.sap.caf.rt.services.serviceaccess.CAFServiceAccessLocalLocalObjectImpl20.findByDataObject(CAFServiceAccessLocalLocalObjectImpl20.java:875)
         at com.sap.caf.rt.ui.cool.generic.AspectServiceAccess.findBy(AspectServiceAccess.java:275)
         at com.sap.caf.rt.ui.cool.generic.Query.execute(Query.java:218)
         at com.sap.caf.ui.servicebrowser.components.visualizer.controllers.TableViewCC.execute(TableViewCC.java:323)
         at com.sap.caf.ui.servicebrowser.components.visualizer.controllers.TableViewCC.setup(TableViewCC.java:276)
         at com.sap.caf.ui.servicebrowser.components.visualizer.controllers.wdp.InternalTableViewCC.setup(InternalTableViewCC.java:192)
         at com.sap.caf.ui.servicebrowser.components.visualizer.views.ServiceBrowserCV.onActionExecuteQuery(ServiceBrowserCV.java:180)
         at com.sap.caf.ui.servicebrowser.components.visualizer.views.wdp.InternalServiceBrowserCV.wdInvokeEventHandler(InternalServiceBrowserCV.java:215)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
         at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doHandleActionEvent(WindowPhaseModel.java:420)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:132)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:330)
         at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:299)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:707)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:661)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:229)
         at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:152)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
         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(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
    Caused by: java.lang.ClassNotFoundException: com.ibm.cer_test.extsrv.bapi__mddataset__get__axis__info.output.AXIS__INFO
    Loader Info -
    ClassLoader name: [ibm.com/cer_test]
    Parent loader name: [Frame ClassLoader]
    References:
       common:service:http;service:servlet_jsp
       service:ejb
       common:service:iiop;service:naming;service:p4;service:ts
       service:jmsconnector
       library:jsse
       library:servlet
       common:library:IAIKSecurity;library:activation;library:mail;library:tcsecssl
       library:ejb20
       library:j2eeca
       library:jms
       library:opensql
       common:library:com.sap.security.api.sda;library:com.sap.security.core.sda;library:security.class;library:webservices_lib;service:adminadapter;service:basicadmin;service:com.sap.security.core.ume.service;service:configuration;service:connector;service:dbpool;service:deploy;service:jmx;service:jmx_notification;service:keystore;service:security;service:userstore
       interface:resourcecontext_api
       interface:webservices
       interface:cross
       interface:ejbserialization
       sap.com/cafruntimeear
       library:com.sap.guid
       library:com.sap.util.monitor.jarm
       sap.com/com.sap.jdo
       library:cafmetamodellib
       sap.com/caf~core
       library:cafruntimeconnectivity
       library:cafruntimeconnectivity~base
       service:applocking
       interface:security
       library:cafruntimeapi~lib
       service:tcsecdestinations~service
       interface:tcsecdestinations~interface
    Resources:
       C:
    usr
    sap
    J17
    JC01
    j2ee
    cluster
    server0
    apps
    ibm.com
    cer_test
    src.zip
       C:
    usr
    sap
    J17
    JC01
    j2ee
    cluster
    server0
    apps
    ibm.com
    cer_test
    EJBContainer
    applicationjars
    ibm.comcer_testejbmodule.jar
       C:
    usr
    sap
    J17
    JC01
    j2ee
    cluster
    server0
    apps
    ibm.com
    cer_test
    EJBContainer
    clientjars
    clientibm.comcer_testejbmodule.jar
    Loading model: {parent,references,local}
         at com.sap.engine.frame.core.load.ReferencedLoader.loadClass(ReferencedLoader.java:382)
         at com.sap.caf.rt.bol.da.remote.MessageEntityConverter.createNewInstance(MessageEntityConverter.java:781)
         ... 50 more
    Thanks in advance
    Sudip

    Hi,
    I too got an exception like that.
    1. Instead of code
    patentServiceLocal local = this.getpatentService();
    local.update(OBJECT);
    use the following
    this.getpatentService().update(OBJECT);
    I got by problem solved this way.
    Regards,
    Srinivasan Subbiah

  • Web Service and CAF Application Services - How to return a table

    Hello,
    I'd like to build a CAF Application Service and expose it as a Web Service. This service should return an array or table which I'd like to display in a Visual Composer model.
    I understand that there're limitations at CAF regarding supported data types.
    Does anyone know how to get a workaround?
    Any information is very appreciated.
    Kind regards
    Stefan

    Hi,
    You can return a list.
    The standard way to do this is you have to create a complex data type for response.
    Configure the cardinality of this data type to 1..n so as to accomodate a list.
    In your implementation add your list to this response message and return the list.
    This waly you can return collections.
    Hope it helps.
    Regards,
    Srinivasan Subbiah

  • Error in executing RFC or CAF Application Service

    Hello Everybody,
    I am creating course approval process, in which I am calling RFC for user info and after course approval, calling CAF application service to persist this data.
    But, both services are not working in process. I have tested callable objects for these services and tested successfully.
    But, when I am attaching it in the process then process can't go forward from this point.
    I have checked in Log viewer and found following error:
    Path to object does not exist at com.sap.caf.eu.gp.model.pfw.local, the whole lookup name is sap.com/com.sap.caf.eu.gp.model.pfw.local/GPUWLBridge.
    What should be the problem in this?
    If I remove these services then whole process works fine.
    Thanks in advance,
    Bhavik

    Hello All,
    Is there any concept like, I call perticular backgound object first time then I cannot call that object for some period of time?
    I am getting same error in calling RFC callable object as well as CAF service callable object.
    I can execute these callable objects in the process first time successfully. But, When I execute this process second time, these callable objects won't execute.
    I can execute same process after 3 to 4 hours successfully once.
    What should be the reason behind this?

  • Unable to instantiate GP process from CAF application service

    Hi,
    I am trying to instantiate a process from my CAF application service as follows.
    IGPProcess process = GPProcessFactory.getDesigntimeManager().getActiveTemplate("7CE44BF090BF11D99817000D60B211F1",user);
    When the execution reaches this step, I am getting the following exception.
    com.sap.engine.frame.core.load.SAPClassNotFoundException
    I suspect that CAF runtime is not able to load GPProcessFactory class. Is there any settings that need to be done or I have to deploy something on the server?
    Please help.
    Thanks
    Raghav

    Hi Raghavendra,
    It seems you are using SPS7 !
    Check runtime reference for J2ee application in application-j2ee-engine.xml :
    <reference
              reference-type="weak">
              <reference-target
                   provider-name="sap.com"
                   target-type="library">cafeugp~api</reference-target>
         </reference>
    Best regards,
    Aliaksei

  • Accessing CAF application service from outside

    Hi,
    Can CAF application service be called from outside the CAF? Example from a pure JSP page?
    Mayukh

    You can also call a CAF service via the EJB protocol from JSP.  Each CAF Service gets deployed as a Stateless Session bean.  You can view these in the IDE if you switch to the J2EE perspective in your CAF project.

  • CAF Application services project -Error

    Hi
    I'm creating in CAF Application services project
    Application is deployed but go to the CAF UI Admin part get Bellow Error
    Failed to get service module: error <null>
    Failed to read configuration data from XML fail. Configuration name: <null> Error: Configuration does not exist.
         Regards
         Srinivas

    closed

  • How to use an Interactive form in a CAF Application service operation ?

    Hi,
    I have a peculiar requirement here:
    The user wants that on the trigger of a specific operation an operation of the Application service should get invoked: this operation should pick up a Adobe form template from a destination and then prefill this forms with some values and then store the same in the backend DMS.
    It's very easy to accomplish this task in WD Java with the use of Interactive form element but here we don't want any kind of user interaction for these forms, just the form templates will be prefilled with some dynamic values and then the same will be saved as is.
    Can some one please provide some insight into how the same can be acieved, any API's etc?.
    Please reply ASAP.
    Regards,
    Manish

    Hi Manish,
    If I get you correctly then you want to Upload a prefilled Adobe IF from some location without any user interaction and save it to some Backend/Temp storage: You need to have something like you have a user inbox and mail comes to this with the Adobe Form as an attachment, you extract the attachment and read it using available Java apis for reading. You can also specify a particular folder where you can place the filled form and then read it using FileInputStream and can save it in the backend after you have it in binary form in your application.
    Hope this helps!!
    Cheers,
    Arafat

  • How to use a structure in CAF entity service

    Hi All
    I want to use a structure as datatype of a complex attribute in a CAF entity service. I tried to use a dictionary structure created in the dictionary part
    of the CAF project and added it to the public part of this DC.But I can't find it in the list of data structures while trying to mention datatype for a complex attribute in an entity service. Can any body suggest how to do it.
    Cheers
    Sudip

    Hello Sudip,
    You can create a complex structure by doing the following:
    1.  From the Attributes Tab, right click on your Entity and select "Create Attribute"
    -  Enter an attribute name and description
    -  select "Complex Attribute" checkbox
    -  select "Finish"
    2.  Right click on the newly created complex attribute and select "Create Sub Attribute".  Do this for each attribute in your structure.
    This complex structure can now be used in your CAF application and also CAF UI patterns.
    Creating complex attributes from the data dictionary is only usually used for creating enumeration types.  When doing this, you have to use the CAF enumeration editor to populate the values.  The "How to guide" that Jan refers to describes this.
    Regards,
    Austin.

  • How webDynpro handles exception thrown by adaptive web service

    Hi people,
    in design time, webdynpro can handle web service's exception by defining return structure based on the <b>Fault </b>which is the exception defined in the web service. But in the runtime, when web service throws exception, webDynpro can not handle it, WD framework will throw nullPointerException.
    The reason behind it might be: let me assume a WS <b>getEmployeeNumber</b>, the WS returns employee number as a element <b><EmployeeNumber></b>12345<b></EmployeeNumber></b> in the return SOAP document. I think WD always expects the element <b><EmployeeNumber></b> in the SOAP document, but in case of exception, web service throws exception and will not provide employee number in the return SOAP which is logical, thus the element <EmployeeNumber> will not be available in the SOAP document, therefore causes WD framework to raise <b>nullPointerException</b>.
    So any of you have any suggestion to make webDynpro working in case an exception is thorwn in the web service?
    Thanks for your infor
    Jayson

    To encourage people, I include the text of the xml response from the test of Web Service Navigator window :
    HTTP/1.1 500 Internal Server Error
    Connection: close
    Server: SAP J2EE Engine/6.40
    Content-Type: text/xml; charset=UTF-8
    Set-Cookie: <value is hidden>
    Date: Mon, 27 Mar 2006 09:30:50 GMT
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
    <SOAP-ENV:Body>
    <SOAP-ENV:Fault>
    <faultcode>SOAP-ENV:Client</faultcode>
    <faultstring>Hi, I'm the new exception</faultstring>
    <detail>
    <ns1:throwException_com.sap.demo.testexception.TestException xmlns:ns1='urn:TestExceptionServiceWsd/TestExceptionServiceVi' xmlns:pns='urn:com.sap.demo.testexception'>
    <pns:message>Hi, I'm the new exception</pns:message>
    </ns1:throwException_com.sap.demo.testexception.TestException>
    </detail>
    </SOAP-ENV:Fault>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    I've found too a strange workaround :
    The fact seems that you have to design your session bean without throwing custom exceptions, then generates the VI and after that, adding the custom exceptions throws.
    Or if you don't want to modify the bussiness methods.
    The point is to eliminate the exceptions (faults) sections from the VI and WS deployment descriptor.
    You have to access from Package Explorer, and edit with a Text Editor the following files :
    *.videf from the package, and remove <Function.Faults> sections
    ws-deployments-descriptor.xml in META-INF, and remove <fault> sections
    After that, the WS Configurations will give an error, so delete the configuration and remake it. Now, the VI stills looks bad, so close the project, close NetViewer and reopen it to flush whatever cache it seems to keep.
    Now, your VI will looks better without exceptions, and you'll get their messages when you catch them in the WebDynpro applicattion.
    So, now the question is: Could anybody explain me why ?

  • CAF-Application Service not visible in GP

    Hi ,
    I've created a composite appliocatioon service which contains an entity service and an application service.
    After deploying, I also tested it successfully.
    Now I want to use this service in callable object in GP.
    But I'm not able to see the application service there.
    My application is visible there, but next two column(Service name and method name) remains blank.
    Wat I've read from tutorials is that only application service can be used in GP.
    It is showing service name and method name for caf.core and caf.tc,but not for my application.
    Can anybody tell me the reason what is the possible cause for that ?
    regards,
    Piyush

    Hi Dipankar,
    I have already tested the service by the procedure you have mentioned.It is working fine from service browser window.
    Is there anything else need to be done to  use that service in CAF GP(some configurations etc)?
    While creating CO, it is showing the service name and methods for caf.core but not for my Application.
    Regards,
    Piyush

  • Working with the line item table in CAF application service

    Hello SDNs,
    I am trying to retrive a value from the Nested list of one of my application service.
    for example,  suppose i have 2 operations in a application service, 1, calls the BAPI_PO_GETDETAIL1 based on the PO number given it returns the POItem, POServices tables.
    2, operation accepts itemno and PO number as a input, and inside calls the 1st operation and wants deal with the POItem and POServices tables which of type standard BAPI classes nested under the main structure created in application service.
    For example, i want to compare the item number given as input with the item numbers in the Item table, which is a output of 1st operation .
    How to get the itemnumber from the POItem table, as this is a nested structure under POOut(defined in AS level) and how to compare this.
    i have written the code as follows but it is returning the error. Can any look into this and suggest me.
    public com.xxx.demo.goodsnserviceack.types.POProcessOut getPOServices(@javax.jws.WebParam(name="PONumber")
    *     java.lang.String PONumber, @javax.jws.WebParam(name="POItem")*
    *     java.lang.String POItem) {*
    // POProcessOut is a output node of current operation
    *          POProcessOut PPO= new POProcessOut();*
    //POHeader details is the nested structure under POProcessOut
    *          POHeaderdetails header=new POHeaderdetails();*     
    //POOutDetails is the output structure of 1st operation     
    *          POOutDetails pt=new POOutDetails();*
    *          try{
    //calling the first operation          *
    *          pt= executeBAPIPOGetDetail(PONumber,"X","X");*
    *          //setting header details*
    *          header.setPO_NUMBER(pt.getPOHeader().getPO_NUMBER());*
    *          header.setVendor(pt.getPOHeader().getVENDOR());*
    *          header.setCOMP_CODE(pt.getPOHeader().getCOMP_CODE());*
    *          header.setSTATUS(pt.getPOHeader().getSTATUS());*
    *          PPO.setPOHeaderdetails(header);*
    *     //comparing the POItem number from POItem table and input of current operation
                       List<BAPIMEPOITEM> itemlist= pt.getPOItem();*
    *          while(itemlist.isEmpty()==false){*
    *          String itemnum= itemlist.get(0).getPO_ITEM();*
    *          if(itemnum.equals(POItem))*
    *               PPO.setItemno(itemnum);*
    *          catch(CAFServiceException e){*
    *               e.printStackTrace();*
    *          return PPO;*
    Your inputs will be appreciated.
    Thanks,
    Sireesha.

    Have you accessed the external webservice in this way:
    EJBLocalHome localHome = HomeFactory.getInstance().getLocalHome("localejbs/sap.com/comptest/ACCRJAVAWSVI__DOCUMENT");
    Method m = localHome.getClass().getMethod("create", new Class[]{});
    ACCRJAVAWSVI__DOCUMENTLocal srv = (ACCRJAVAWSVI__DOCUMENTLocal)m.invoke(localHome, new Object[] {});
    srv.validateLogin(input) ;
    Aliaksei

  • How to log exception from a struts action class

    Hi guys,
    I am recoding my application to use the strut framework. There's one small thing i wonder is that how i can log an exception arrise in an action class. In my original servlet, wherever an exception arise, i use:
    catch(Exception e)
             getServletContext().log("User enter an invalid date");
             throw e;
          }However, when i move this servlet into a action class, the getServletContext method doesnt work anymore. I thought action is a child of httpServlet but since getServletContext is not available in action, then how can i log the error?
    Hope to get some help
    Message was edited by:
    lnthai2002

    Hi guys,
    I am recoding my application to use the strut
    framework. There's one small thing i wonder is that
    how i can log an exception arrise in an action class.
    In my original servlet, wherever an exception arise,
    i use:
    catch(Exception e)
    getServletContext().log("User enter an invalid
    valid date");
             throw e;
          }However, when i move this servlet into a action
    class, the getServletContext method doesnt work
    anymore. I thought action is a child of httpServlet
    but since getServletContext is not available in
    action, then how can i log the error?
    Hope to get some help
    Message was edited by:
    lnthai2002Action class is just a POJO and works a handler of your request. ActionServlet invoke your Action class based on the action you call in your URL. When you are usign the Struts why do you need your Original Servel, use the ActionServlet and if required you can extend it and create your own servlet

  • How to log exceptions and imp logging info in Portal Service via ILogger?

    Hi Experts,
    I m trying to use ILogger for my application.
    Information about my application:
    I have created a Portal Service and exposed it as a Web Service which is deployed as a PAR file on to the SAP J2EE Engine.
    I need to use the Logging facility of ILogger in this Portal Service.
    I have written the following code in the Init() function of the Portal Service
    public void init(IServiceContext serviceContext)
           mm_logger = serviceContext.getLogger("com.persistent.pankaj");
    I have put the logger.xml in the logger folder of PORTAL-INF
    my logger.xml is as follows:
    <Server>
    <Logger name="testLog" loggerInterface="com.sapportals.portal.prt.logger.ILogger" locationName="com.sap.portal.testLog" pattern="%d # %20t %15s %m #" isActive="true">
    <LoggerClass className="com.sapportals.portal.prt.logger.SimpleFileLogger" level="INFO">
    <param filename="logs/com.persistent.pankaj.log" append="true">
    </param>
    </LoggerClass>
    </Logger>
    </Server>
    On deploying my portal service as a web service
    I m unable to get the logs.
    I even dont know where will i get the log file, means wat is the exact location where i can check my log results
    I m a newbie for this
    Please help me out
    Help will be rewarded n appreciated
    -pankaj

    Hi Pankaj,
    In your init method try this code to create the logger:
    ILogger logger = PortalRuntime.getLogger("testLog");
    In your logger.xml the logger name was testLog and not com.persistent.pankaj so while creating logger you should use testLog in the above code.
    By default all the logs are written to defaultTrace.log files, to check them read this:
    Portal Runtime Logs
    If you want to log in a seperate logfile then you should set a seperate log destination, which is not recommended on productive systems due to performance problems.
    Also read these to know how to set seperate log destinations:
    Netweaver Portal Log Configuration & Viewing (Part 3)
    Netweaver Portal Log Configuration & Viewing (Part 1)
    Netweaver Portal Log Configuration & Viewing (Part 2)
    Regards,
    Praveen Gudapati

  • Spool disappears in SP01 after exception raised or exiting application, but remains during LEAVE TO SCREEN '0'.

    Hi Experts,
    I'm using FMs SSF_OPEN and SSF_CLOSE to display multiple smartforms. After SSF_CLOSE the spool appears in SP01, when I exit the application (exit application and debugger) or raise an exception after FM SSF_CLOSE, the spool disappears from SP01.
    But if after SSF_CLOSE, I put SET SCREEN '0'. LEAVE SCREEN - which supposedly should exit the program, the spool is not being deleted from SP01.
    My question is, is there any way to commit the spool in SP01 even if I close the application or raise an exception? Should the code "COMMIT WORK", work for this requirement?
    Thanks in advanced,
    Jack.

    Hi All,
    I've solved this using COMMIT WORK

Maybe you are looking for