Show TOC Start of Content Area

Background documentation Code Sample  Locate the document in its SAP Library structure

The following code sample executes an XML script:

package com.sap.portal.testing.gc;

 

import java.io.File;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStream;

import java.util.Enumeration;

import java.util.List;

 

import com.sap.portal.genericcreator.GenericCreatorParams;

import com.sap.portal.genericcreator.GenericCreatorResult;

import com.sap.portal.genericcreator.IGenericCreator;

import com.sap.portal.genericcreator.IGenericCreatorGatewayService;

import com.sap.portal.genericcreator.IGenericCreatorResults;

import com.sap.portal.ivs.genericcreator.Reporter;

import com.sapportals.portal.prt.component.AbstractPortalComponent;

import com.sapportals.portal.prt.component.IPortalComponentRequest;

import com.sapportals.portal.prt.component.IPortalComponentResponse;

import com.sapportals.portal.prt.runtime.PortalRuntime;

 

public class GCReporterThreadTest extends AbstractPortalComponent {

 

    public void doContent(IPortalComponentRequest request,
            IPortalComponentResponse response) {

        testGenericCreatorAPI(request,response);

    }

 

    // Main routine

    public void testGenericCreatorAPI(IPortalComponentRequest request,
            IPortalComponentResponse response) {

 

        // Get service

        IGenericCreatorGatewayService gwService =
            (IGenericCreatorGatewayService)PortalRuntime
                .getRuntimeResources().getService(
                    IGenericCreatorGatewayService.
KEY);

        IGenericCreator genericCreator = gwService.getGenericCreator();

 

        // Set user and XML

        GenericCreatorParams gcParams = new
          GenericCreatorParams(request.getUser(),getGCString());

 

        // Execute script

        IGenericCreatorResults gcResults =
            genericCreator.generate(gcParams);

        GenericCreatorResult res = gcResults.getResult();

 

        // Print results

        response.write("succeeded? -> " + res.toString() + "<br>");

 

        printNodes(response,"Parsed",gcResults.getParsedNodes());

        printNodes(response,"Validation Failed",gcResults.getValidationFailedNodes());

        printNodes(response,"Executed",gcResults.getExecutedNodes());

        printNodes(response,"Ignored",gcResults.getIgnoredNodes());

        printNodes(response,"Succeeded",gcResults.getSucceededNodes());

        printNodes(response,"Failed",gcResults.getFailedNodes());

 

        response.write(gcResults.getReport());

    }

 

    // Print routine (prints results)

    private static void printNodes(IPortalComponentResponse response,
        String
type,Enumeration enum) {

 

        response.write(type + " Nodes<br>");

        while (enum.hasMoreElements()) {

            response.write((String)enum.nextElement() + "<br>");

        }

        response.write("<br>");

    }

 

    // Creates XML script

    private static String getGCString() {

        StringBuffer sb = new StringBuffer("<GenericCreator author='SAP' version='Testing' mode='clean,execute' report.level='success' createMode='1' default.locale='en' ignore='false'>");

       sb.append("<Context parent='portal_content' name='test_folder' objectClass='com.sap.portal.pcd.gl.GlContext' title='Test folder'>");

       sb.append("</Context></GenericCreator>");

 

       return sb.toString();

    }

}

End of Content Area