WARNING: Problem validating implementation class. Exception declaration mis

I have created sample class using JDevStudio10.1.3
Added method getX() throws Ex (Ex implements Exception)
Select class and generated J2EE 1.4 RPC webservices
Got the warning :
Generating WSDL and mapping file
WARNING: Problem validating implementation class. Exception declaration mismatch between Implementation: mypackage.Class3 and Interface: mypackage.MyWebService3. Impl class Method: X declares exceptions not declared by the interface (mypackage.Exp)
Now When I generated client proxy from the wsdl generated, Ex class is not getting generated.
Can some one help me please.
Thanks in advance

If you are using Ex in the implemetation class, make sure that you also include the same in the interface (or SEI).
If the implementation looks something like:
public void doSomething() throws Ex {
System.out.println("Is there something to do, now ?");
then the SEI should be:
public void doSomething() throws Ex, RemoteException;
If your have ommited Ex, then you will have the warning you are seing, and there wont be any artifact generated for Ex in the WSDL.
Because the Ex exception was not mapped to any WSDL artifact, there is no way you will see the Ex exception generated on the client side (or proxy).
I have been able to reproduce your error message, so you should be all good.
WARNING: Problem validating implementation class. Exception declaration mismatch between Implementation: bugyyy.MyServiceImpl and Interface: bugyyy.MyWebService. Impl class Method: doSomething declares exceptions not declared by the interface (bugyyy.Ex)
Hope this helps,
Eric

Similar Messages

  • WARNING: Problem validating implementation class. Failed to load class:

    when i am running plsqlAssembler.jar file for wsa.jar with all other atributes , i am getting this warning WARNING: Problem validating implementation class. Failed to load class.
    Please if anybody knows about this reply me,
    thanks in advance.

    If you are using Ex in the implemetation class, make sure that you also include the same in the interface (or SEI).
    If the implementation looks something like:
    public void doSomething() throws Ex {
    System.out.println("Is there something to do, now ?");
    then the SEI should be:
    public void doSomething() throws Ex, RemoteException;
    If your have ommited Ex, then you will have the warning you are seing, and there wont be any artifact generated for Ex in the WSDL.
    Because the Ex exception was not mapped to any WSDL artifact, there is no way you will see the Ex exception generated on the client side (or proxy).
    I have been able to reproduce your error message, so you should be all good.
    WARNING: Problem validating implementation class. Exception declaration mismatch between Implementation: bugyyy.MyServiceImpl and Interface: bugyyy.MyWebService. Impl class Method: doSomething declares exceptions not declared by the interface (bugyyy.Ex)
    Hope this helps,
    Eric

  • Invalid Class Exception problem

    Hi whenever i try to run this method from a different class to the one it is declared in it throws invalid class exception, (in its error it says the class this method is written in is the problem) yet when i run it from its own class in a temporary main it works fine, perhaps someone can see the problem in the method code. All its doing is reading from a few different txt files, deserializing the objects and putting them into arraylists for future access.
    public void readCourseData()
              CourseArrayLengths cal;
              try
                   FileInputStream fis = new FileInputStream("arraylengths.txt");
                   ObjectInputStream ois = new ObjectInputStream(fis);
                   cal = ((CourseArrayLengths) ois.readObject());     
                   ois.close();
                   FileInputStream fis1 = new FileInputStream("units.txt");
                   ObjectInputStream ois1 = new ObjectInputStream(fis1);
                   for(int i=0;i<cal.getUnitArrayLength();i++)
                        units.add((Unit) ois1.readObject());
                   ois1.close();
                   FileInputStream fis2 = new FileInputStream("sections.txt");
                   ObjectInputStream ois2 = new ObjectInputStream(fis2);
                   for(int i=0;i<cal.getSectionArrayLength();i++)
                        sections.add((Section) ois2.readObject());
                   ois2.close();
                   FileInputStream fis3 = new FileInputStream("files.txt");
                   ObjectInputStream ois3 = new ObjectInputStream(fis3);
                   for(int i=0;i<cal.getFileArrayLength();i++)
                        files.add((Filetype) ois3.readObject());
                   ois3.close();
              catch(FileNotFoundException exception)
              System.out.println("The File was not found");
              catch(IOException exception)
              System.out.println(exception);
              catch(ClassNotFoundException exception)
              System.out.println(exception);
         }

    import java.util.ArrayList;
    import java.io.*;
    import javax.swing.*;
    public class Unit implements Serializable
    ArrayList units = new ArrayList();
    ArrayList sections = new ArrayList();
    ArrayList files = new ArrayList();
    String unitName;
    int sStart=0,sEnd=0,sIndex=0,fIndex=0,subIndex=0;
         public Unit(String unitNamec,int sStartc,int sEndc)
              unitName = unitNamec;
              sStart = sStartc;
              sEnd = sEndc;
         public Unit()
         public String getUnitName()
              return unitName;
         public Unit getUnit(int i)
              return (Unit)units.get(i);
         public Section getSection(int i)
              return (Section)sections.get(i);
         public ArrayList getUnitArray()
              return units;
         public int getSectionStart()
              return sStart;
         public int getSectionEnd()
              return sEnd;
         public void setSectionStart(int i)
              sStart = i;
         public void setSectionEnd(int i)
              sEnd = i;
         public void addUnit(String uName)
              units.add(new Unit(uName,sections.size(),sIndex));
              sIndex++;
         public void addSection(String sName,Unit u)
              //problem lies with files.size()
              sections.add(new Section(sName,files.size(),files.size()));
              u.setSectionEnd(u.getSectionEnd()+1);
              //fIndex++;
         public void addFile(String fName,File fPath,Section s)
              files.add(new Filetype(fName,fPath));
              s.setFileEnd(s.getFileEnd()+1);
         public void display(Unit u)
              System.out.println(u.getUnitName());
              for(int i=u.getSectionStart();i<u.getSectionEnd();i++)
                   System.out.println(((Section)sections.get(i)).getSectName());
                   for(int j=((Section)(sections.get(i))).getFileStart();j<((Section)(sections.get(i))).getFileEnd();j++)
                        System.out.println(((Filetype)files.get(j)).getFileName());
         public void writeCourseData()
         //writes 3 arrays to 3 different files
    try
    FileOutputStream fos = new FileOutputStream("units.txt");
    ObjectOutputStream oos = new ObjectOutputStream(fos);
         for(int i=0;i<units.size();i++)
         oos.writeObject((Unit)units.get(i));
         oos.close();
    catch (Exception e)
    System.err.println ("Error writing to file");
    try
    FileOutputStream fos = new FileOutputStream("sections.txt");
    ObjectOutputStream oos = new ObjectOutputStream(fos);
         for(int i=0;i<sections.size();i++)
         oos.writeObject((Section)sections.get(i));
         oos.close();
    catch (Exception e)
    System.err.println ("Error writing to file");
    try
    FileOutputStream fos = new FileOutputStream("files.txt");
    ObjectOutputStream oos = new ObjectOutputStream(fos);
         for(int i=0;i<files.size();i++)
         oos.writeObject((Filetype)files.get(i));
         oos.close();
    catch (Exception e)
    System.err.println ("Error writing to file");
    try
    FileOutputStream fos = new FileOutputStream("arraylengths.txt");
    ObjectOutputStream oos = new ObjectOutputStream(fos);
         oos.writeObject(new CourseArrayLengths(units.size(),sections.size(),files.size()));
         oos.close();
    catch (Exception e)
    System.err.println ("Error writing to file");
         public void readCourseData()
              CourseArrayLengths cal;
              try
                   FileInputStream fis = new FileInputStream("arraylengths.txt");
                   ObjectInputStream ois = new ObjectInputStream(fis);
                   cal = ((CourseArrayLengths) ois.readObject());     
                   ois.close();
                   FileInputStream fis1 = new FileInputStream("units.txt");
                   ObjectInputStream ois1 = new ObjectInputStream(fis1);
                   for(int i=0;i<cal.getUnitArrayLength();i++)
                        units.add((Unit) ois1.readObject());
                   ois1.close();
                   FileInputStream fis2 = new FileInputStream("sections.txt");
                   ObjectInputStream ois2 = new ObjectInputStream(fis2);
                   for(int i=0;i<cal.getSectionArrayLength();i++)
                        sections.add((Section) ois2.readObject());
                   ois2.close();
                   FileInputStream fis3 = new FileInputStream("files.txt");
                   ObjectInputStream ois3 = new ObjectInputStream(fis3);
                   for(int i=0;i<cal.getFileArrayLength();i++)
                        files.add((Filetype) ois3.readObject());
                   ois3.close();
              catch(FileNotFoundException exception)
              System.out.println("The File was not found");
              catch(IOException exception)
              System.out.println(exception);
              catch(ClassNotFoundException exception)
              System.out.println(exception);
         /*public static void main(String args[])
              Unit u1 = new Unit();
              u1.addUnit("Cmps2a22");
              u1.addSection("Section1",u1.getUnit(0));
              //u1.addSubSection("Subsect1",u1.getSection(0));
              u1.addFile("File1",null,u1.getSection(0));
              u1.addFile("File2",null,u1.getSection(0));
              u1.addSection("Section2",u1.getUnit(0));
              u1.addFile("NF",null,u1.getSection(1));
              u1.addFile("NF2",null,u1.getSection(1));
              u1.addFile("NF3",null,u1.getSection(1));
              u1.addSection("Section3",u1.getUnit(0));
              u1.addFile("NF",null,u1.getSection(2));
              u1.addFile("NF2",null,u1.getSection(2));
              u1.addFile("NF4",null,u1.getSection(2));
              u1.display(u1.getUnit(0));
              u1.writeCourseData();
              u1.readCourseData();
              u1.display(u1.getUnit(0));
    import java.util.ArrayList;
    import java.io.*;
    public class Section implements Serializable
    private String sectName,subSectName;
    private int fpStart=0,fpEnd=0,subSectStart=0,subSectEnd=0;
    private Section s;
    private boolean sub;
         public Section(String sectNamec,int fpStartc,int fpEndc,int subSectStartc,int subSectEndc,Section sc,boolean subc)
              sectName = sectNamec;
              fpStart = fpStartc;
              fpEnd = fpEndc;
              subSectStart = subSectStartc;
              subSectEnd = subSectEndc;
              s = sc;
              sub = subc;
         public Section(String sectNamec,int fpStartc,int fpEndc)
              sectName = sectNamec;
              fpStart = fpStartc;
              fpEnd = fpEndc;
         public Section getParent()
              return s;
         public boolean isSub()
              return sub;
         public String getSubName()
              return subSectName;
         public int getSubStart()
              return subSectStart;
         public int getSubEnd()
              return subSectEnd;
         public void setSubStart(int i)
              subSectStart = i;
         public void setSubEnd(int i)
              subSectEnd = i;
         public int getFileStart()
              return fpStart;
         public int getFileEnd()
              return fpEnd;
         public String getSectName()
              return sectName;
         public void setFileStart(int i)
              fpStart = i;
         public void setFileEnd(int i)
              fpEnd = i;
         public void addSection(String sectName)
         /*public static void main(String args[])
    import java.io.*;
    public class Filetype implements Serializable
         private String name;
         private File filepath;
         public Filetype(String namec, File filepathc)
              name = namec;
              filepath = filepathc;
         public String getFileName()
              return name;
         public File getFilepath()
              return filepath;
    import java.io.*;
    public class CourseArrayLengths implements Serializable
    private int ul,sl,fl;
         public CourseArrayLengths(int ulc,int slc,int flc)
              ul = ulc;
              sl = slc;
              fl = flc;
         public int getUnitArrayLength()
              return ul;
         public int getSectionArrayLength()
              return sl;
         public int getFileArrayLength()
              return fl;
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.util.ArrayList;
    import java.io.*;
    public class OrganiserGui implements ActionListener
    int width,height;
    JFrame frame;
         public OrganiserGui()
              width = 600;
              height = 500;
         public void runGui()
              //Frame sizes and location
              frame = new JFrame("StudentOrganiser V1.0");
    frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE);
              frame.setSize(width,height);
              frame.setLocation(60,60);
              JMenuBar menuBar = new JMenuBar();
              //File menu
              JMenu fileMenu = new JMenu("File");
              menuBar.add(fileMenu);
              fileMenu.addSeparator();
              JMenu addSubMenu = new JMenu("Add");
              fileMenu.add(addSubMenu);
              JMenuItem cwk = new JMenuItem("Coursework assignment");
              addSubMenu.add(cwk);
              JMenuItem lecture = new JMenuItem("Lecture");
              lecture.addActionListener(this);
              addSubMenu.add(lecture);
              JMenuItem seminar = new JMenuItem("Seminar sheet");
              addSubMenu.add(seminar);
              //Calendar menu
              JMenu calendarMenu = new JMenu("Calendar");
              menuBar.add(calendarMenu);
              calendarMenu.addSeparator();
              JMenu calendarSubMenu = new JMenu("Edit Calendar");
              calendarMenu.add(calendarSubMenu);
              JMenuItem eventa = new JMenuItem("Add/Remove Event");
              eventa.addActionListener(this);
              calendarSubMenu.add(eventa);
              JMenuItem calClear = new JMenuItem("Clear Calendar");
              calClear.addActionListener(this);
              calendarSubMenu.add(calClear);
              JMenu calendarSubMenuView = new JMenu("View");
              calendarMenu.add(calendarSubMenuView);
              JMenuItem year = new JMenuItem("By Year");
              year.addActionListener(this);
              calendarSubMenuView.add(year);
              JMenuItem month = new JMenuItem("By Month");
              month.addActionListener(this);          
              calendarSubMenuView.add(month);
              JMenuItem week = new JMenuItem("By Week");
              week.addActionListener(this);
              calendarSubMenuView.add(week);
              //Timetable menu
              JMenu timetableMenu = new JMenu("Timetable");
              menuBar.add(timetableMenu);
              timetableMenu.addSeparator();
              JMenu stimetableSubMenu = new JMenu("Social Timetable");
              timetableMenu.add(stimetableSubMenu);
              JMenu ltimetableSubMenu = new JMenu("Lecture Timetable");
              timetableMenu.add(ltimetableSubMenu);
              frame.setJMenuBar(menuBar);
    frame.setVisible(true);
         public void actionPerformed(ActionEvent e)
              JMenuItem source = (JMenuItem)(e.getSource());
              System.out.println(source.getText());     
              Calendar c = new Calendar();
              if(source.getText().equalsIgnoreCase("By Year"))
                   System.out.println("INSIDE");
                   c.buildArray();
                   c.calendarByYear(Calendar.calendarArray);     
              if(source.getText().equalsIgnoreCase("Add/Remove Event"))
                   c.eventInput();
              if(source.getText().equalsIgnoreCase("clear calendar"))
                   c.buildYear();
                   c.writeEvent(Calendar.calendarArray);
                   c.buildArray();
              if(source.getText().equalsIgnoreCase("lecture"))
                   System.out.println("Nearly working");
                   //JFileChooser jf = new JFileChooser();
                   //jf.showOpenDialog(frame);
                   FileManager fm = new FileManager();
                   //choose unit to add file to
                   JOptionPane unitOption = new JOptionPane();
                   Unit u = new Unit();
                   u.readCourseData();
                   //u.display(u.getUnit(0));
                   System.out.println((u.getUnit(0)).getUnitName());
                   String[] unitNames = new String[u.getUnitArray().size()];
                   for(int i=0;i<unitNames.length;i++)
                        //unitNames[i] = (((Unit)u.getUnitArray().get(i)).getUnitName());
                        //System.out.println(unitNames);
                        System.out.println((u.getUnit(i)).getUnitName());
                   //unitOption.showInputDialog("Select Unit to add lecture to",unitNames);
                   //needs to select where to store it
                   //fm.openFile(jf.getSelectedFile());
         public static void main(String args[])
              OrganiserGui gui = new OrganiserGui();
              gui.runGui();
    java.io.invalidclassexception: Unit; local class incompatible: stream classdesc serialversionUID = 3355176005651395533, local class serialversionUID = 307309993874795880

  • Receiving the warning of class forward declaration

    I am trying to build the Clustering Plug in project on my Leopard. I have following 2 queries -
    In that project an interface class is defined as
    @interface ClusteringController : NSWindowController { ....... ..... .... } @end.
    And this class is used in implementation class using forward declaration as follows
    @class ClusteringController;
    then in one fuction it is used as follows
    (long) filterImage:(NSString*) menuName {
    ClusteringController *cluster = [[ClusteringController alloc] init]; [cluster showWindow:self]; return 0; }
    When i try to build this project it showing a warning as follows
    warning: receiver 'ClusteringController' is a forward class and corresponding @interface may not exist
    Also there is 1 more warning is coming
    warning: no '-updateProxyWhenReconnect' method found
    This warning is coming for the following line of code
    if(delegate) [delegate updateProxyWhenReconnect];
    Can anybody help me to overcome these warnings?

    shaktirsg wrote:
    And this class is used in implementation class using forward declaration as follows
    @class ClusteringController;
    An implementation requires an #import of the entire interface file for any class used in the code. As a rule:
    Use @class when a class is used in an @interface
    Use #import when a class is used in an @implementation
    if(delegate) \[delegate updateProxyWhenReconnect\];
    warning: no '- updateProxyWhenReconnect' method found
    It looks like the compiler doesn't know the class of 'delegate'. Can we see the code that sets the 'delegate' variable? Also please let us know where updateProxyWhenReconnect is declared. Is it declared in the interface for the class to which 'delegate' belongs? If so, it might be good for us to also see that @interface file.
    \- Ray

  • How to resolve preverifying class exception while building

    Hi,
    I am new to J2ME, i am getting preverifying class exception when ever building a application using Wireless Toolkit 2.1, JDK1.5, CLDC 1.1.
    actually i need to run web application on mobiles (PDA), can any one suggests how to resolve the above exception and what are the jar files required in classpath.
    Please let me know.
    Thanks
    ST_Reddy.

    Then leave it as it is. If the method doesn't throw the exception it is not a problem.
    If you need to throw the exception in some rare cases, then throw RuntimeException. It is not required to declare such exception in interface.

  • A problem while implementing a file to file senario

    hi all :
         There is some problem while implement a file to file senario. the file couldn't be sent or recieved.
          and as I try to check Check the Sender File Adapter Status  via
         Runtime Workbench -> Component Monitoring -> Communication Channel Monitoring ,
         It is found that Adapter Engine has error status with red light.  Is it why the file couldn't be sent?
        Could you please tell me how to make Adapter Engine  available?
        Thank you very much!!!

    Hi Sony
    Error getting JPR configuration from SLD. Exception: No entity of class SAP_BusinessSystem for EC1.SystemHome.cnbjw3501 found
    No access to get JPR configuration
    Along with what experts suggested
    What is the type of Business system is this. Standalone Java?
    JPR can have problem if you have a business system thats not ABAP/Java type if this system is not having a SAP TS in landscape then create Java type.
    Thanks
    Gaurav

  • Problems Validating an Attribute of type oracle.jbo.domain.date

    I have a form that has a date input field. I am trying to customise the exception error for this field for when the user enters something other than my dd/MM/yyyy format. ie JBO-25009: oracle.jbo.domain.DataCreationException
    This Attribute uses a the oracle.jbo.domain.date data type. An exception is finally thrown when the transaction trys to commit.
    My problem is that I can't customise the exception because I can't catch where it is occuring. I have tried at the <setAttributeInternal>, <setAttribute> and <validateEntity> levels uses both try{}catch(Jbo Exception){} and try{}catch(AttrValException){}. I believe the reason for this is because the problem occurs because the parse value to functions are invalid dates so it never enters them.
    If this is true validation and any exception thrown should occur at the data type level, but the the oracle.jbo.domain.date class doesn't have a validate method.
    Can someone please help me get around this problem. Or tell me if the have a solution for date input validation.

    The usecase is as follows:
    I have a DynaAction Form with a input field for a date value. This field in the form is associated with an entity attribute that is of the type oracle.jbo.domain.date
    In the message bundle for this entity I specify a format (dd/MM/yyyy) and formatter for the field (oracle.jbo.format.DefaultDateFormatter). In the jsp page I display the field using the following tag within the <jbo:row> tags,
    <jbo:InputDate dataitem="ChangeDate" formname="ApplicationReleaseForm"/>
    The date picker script works well here and the formatter formats it correctly.
    My error occurs when an invalid date value is entered. Ie characters like "abc" or numeric values that don't match a date format ie my date format (dd/MM/yyyy) or the default format of the jbo.domain.date type(yyyy-MM-dd).
    On submitting my form the input is posted to an action that extends the Update action class. I use the following expression to cache the input from the form in the viewobject:
    ActionForward actionForward = super.execute(mapping,form,request,response);
    The invalid input appears to be able to slip through this call without causing an exception, unless I make the attribute manditory. In this case an exception is thrown causing the form to be returned and the mandatory value error message to be shown.
    If the attribute is not mandatory the exception is not thrown until I make a call to commit; eg
    context.getApplicationModule().getTransaction().commit();
    The DataCreationException is the initial exception that is caught and causes the rest of the transaction to fall over.
    It is my understanding that if the input is wrong then it should be picked up when the form data is pushed into the viewobject, ie in the call to execute and at the setAttributeInternal() method call for the attribute in the viewobject. I don't believe that the input gets this far as the input is not a valid date, indicating to me that the oracle.jbo.domain.date should be the object throwing the exception.
    I hope this gives you a better understanding of the process and where and what causes the problem to occur.

  • How to implement classes with alv's

    hi
    how to implement classes with alv's

    Hi Jyotsna,
    check this example codes.
    *"Table declarations...................................................
    TABLES:
    EKKO, " Purchasing Document Header
    CDHDR, " Change document header
    SSCRFIELDS. " Fields on selection screens
    *"Selection screen elements............................................
    SELECT-OPTIONS:
    S_EBELN FOR EKKO-EBELN, " Purchasing Document Number
    S_LIFNR FOR EKKO-LIFNR, " Vendor's account number
    S_EKGRP FOR EKKO-EKGRP, " Purchasing group
    S_BEDAT FOR EKKO-BEDAT, " Purchasing Document Date
    S_UDATE FOR CDHDR-UDATE. " Creation date of the change
    " document
    *" Data declarations...................................................
    Field String to hold Purchase Document Number *
    DATA:
    BEGIN OF FS_EBELN,
    EBELN(90) TYPE C, " Purchase Document Number
    ERNAM TYPE EKKO-ERNAM, " Name of Person who Created
    " the Object
    LIFNR TYPE EKKO-LIFNR, " Vendor's account number
    EKGRP TYPE EKKO-EKGRP, " Purchasing group
    BEDAT TYPE EKKO-BEDAT, " Purchasing Document Date
    END OF FS_EBELN,
    Field String to hold Purchase Document Header *
    BEGIN OF FS_EKKO,
    EBELN TYPE EKKO-EBELN, " Purchasing Document Number
    ERNAM TYPE EKKO-ERNAM, " Name of Person who Created the
    " Object
    LIFNR TYPE EKKO-LIFNR, " Vendor's account number
    EKGRP TYPE EKKO-EKGRP, " Purchasing group
    BEDAT TYPE EKKO-BEDAT, " Purchasing Document Date
    END OF FS_EKKO,
    Field String to hold Account Number and name of the Vendor *
    BEGIN OF FS_LFA1,
    LIFNR TYPE LFA1-LIFNR, " Account Number of Vendor
    NAME1 TYPE LFA1-NAME1, " Name1
    END OF FS_LFA1,
    Field String to hold Change date and the name of the user *
    BEGIN OF FS_CDHDR,
    OBJECTCLAS TYPE CDHDR-OBJECTCLAS, " Object Class
    OBJECTID TYPE CDHDR-OBJECTID, " Object value
    CHANGENR TYPE CDHDR-CHANGENR, " Document change number
    USERNAME TYPE CDHDR-USERNAME, " User name
    UDATE TYPE CDHDR-UDATE, " Creation date of the change
    " document
    END OF FS_CDHDR,
    Field String to hold Change document items *
    BEGIN OF FS_CDPOS,
    OBJECTCLAS TYPE CDPOS-OBJECTCLAS," Object class
    OBJECTID(10) TYPE C, " Object Value
    CHANGENR TYPE CDPOS-CHANGENR, " Document change number
    TABNAME TYPE CDPOS-TABNAME, " Table Name
    FNAME TYPE CDPOS-FNAME, " Field Name
    VALUE_NEW TYPE CDPOS-VALUE_NEW, " New contents of changed field
    VALUE_OLD TYPE CDPOS-VALUE_OLD, " Old contents of changed field
    END OF FS_CDPOS,
    Field String to hold Date Element Name *
    BEGIN OF FS_DATAELE,
    TABNAME TYPE DD03L-TABNAME, " Table Name
    FIELDNAME TYPE DD03L-FIELDNAME, " Field Name
    ROLLNAME TYPE DD03L-ROLLNAME, " Data element (semantic domain)
    END OF FS_DATAELE,
    Field String to hold Short Text of the Date Element *
    BEGIN OF FS_TEXT,
    ROLLNAME TYPE DD04T-ROLLNAME, " Data element (semantic domain)
    DDTEXT TYPE DD04T-DDTEXT, " Short Text Describing R/3
    " Repository Objects
    END OF FS_TEXT,
    Field String to hold data to be displayed on the ALV grid *
    BEGIN OF FS_OUTTAB,
    EBELN TYPE EKKO-EBELN, " Purchasing Document Number
    ERNAM TYPE EKKO-ERNAM, " Name of Person who Created the
    " Object
    LIFNR TYPE EKKO-LIFNR, " Vendor's account number
    EKGRP TYPE EKKO-EKGRP, " Purchasing group
    BEDAT TYPE EKKO-BEDAT, " Purchasing Document Date
    WERKS TYPE LFA1-WERKS, " Plant
    NAME1 TYPE LFA1-NAME1, " Name1
    USERNAME TYPE CDHDR-USERNAME, " User name
    UDATE TYPE CDHDR-UDATE, " Creation date of the change
    " document
    DDTEXT TYPE DD04T-DDTEXT, " Short Text Describing R/3
    " Repository Objects
    VALUE_NEW TYPE CDPOS-VALUE_NEW, " New contents of changed field
    VALUE_OLD TYPE CDPOS-VALUE_OLD, " Old contents of changed field
    END OF FS_OUTTAB,
    Internal table to hold Purchase Document Number *
    T_EBELN LIKE STANDARD TABLE
    OF FS_EBELN,
    Internal table to hold Purchase Document Header *
    T_EKKO LIKE STANDARD TABLE
    OF FS_EKKO,
    Temp Internal table to hold Purchase Document Header *
    T_EKKO_TEMP LIKE STANDARD TABLE
    OF FS_EKKO,
    Internal table to hold Account number and Name of the Vendor *
    T_LFA1 LIKE STANDARD TABLE
    OF FS_LFA1,
    Internal Table to hold Change date and the name of the user *
    T_CDHDR LIKE STANDARD TABLE
    OF FS_CDHDR,
    Internal Table to hold Change document items *
    T_CDPOS LIKE STANDARD TABLE
    OF FS_CDPOS,
    Temp. Internal Table to hold Change document items *
    T_CDPOS_TEMP LIKE STANDARD TABLE
    OF FS_CDPOS,
    Internal Table to hold Data Element Name *
    T_DATAELE LIKE STANDARD TABLE
    OF FS_DATAELE,
    Temp. Internal Table to hold Data Element Name *
    T_DATAELE_TEMP LIKE STANDARD TABLE
    OF FS_DATAELE,
    Internal Table to hold Short Text of the Date Element *
    T_TEXT LIKE STANDARD TABLE
    OF FS_TEXT,
    Internal Table to hold data to be displayed on the ALV grid *
    T_OUTTAB LIKE STANDARD TABLE
    OF FS_OUTTAB.
    C L A S S D E F I N I T I O N *
    CLASS LCL_EVENT_HANDLER DEFINITION DEFERRED.
    *" Data declarations...................................................
    Work variables *
    DATA:
    W_EBELN TYPE EKKO-EBELN, " Purchasing Document Number
    W_LIFNR TYPE EKKO-LIFNR, " Vendor's account number
    W_EKGRP TYPE EKKO-EKGRP, " Purchasing group
    W_VALUE TYPE EKKO-EBELN, " Reflected Value
    W_SPACE VALUE ' ', " Space
    W_FLAG TYPE I, " Flag Variable
    W_VARIANT TYPE DISVARIANT, " Variant
    ALV Grid
    W_GRID TYPE REF TO CL_GUI_ALV_GRID,
    Event Handler
    W_EVENT_CLICK TYPE REF TO LCL_EVENT_HANDLER,
    Field catalog table
    T_FIELDCAT TYPE LVC_T_FCAT.
    AT SELECTION-SCREEN EVENT *
    AT SELECTION-SCREEN ON S_EBELN.
    Subroutine to validate Purchase Document Number.
    PERFORM VALIDATE_PD_NUM.
    AT SELECTION-SCREEN ON S_LIFNR.
    Subroutine to validate Vendor Number.
    PERFORM VALIDATE_VEN_NUM.
    AT SELECTION-SCREEN ON S_EKGRP.
    Subroutine to validate Purchase Group.
    PERFORM VALIDATE_PUR_GRP.
    START-OF-SELECTION EVENT *
    START-OF-SELECTION.
    Subroutine to select all Purchase orders.
    PERFORM SELECT_PO.
    CHECK W_FLAG EQ 0.
    Subroutine to select Object values.
    PERFORM SELECT_OBJ_ID.
    CHECK W_FLAG EQ 0.
    Subroutine to select Changed values.
    PERFORM SELECT_CHANGED_VALUE.
    CHECK W_FLAG EQ 0.
    Subroutine to Select Purchase Orders.
    PERFORM SELECT_PUR_DOC.
    Subroutine to select Vendor Details.
    PERFORM SELECT_VENDOR.
    Subroutine to select Text for the Changed values.
    PERFORM DESCRIPTION.
    END-OF-SELECTION EVENT *
    END-OF-SELECTION.
    IF NOT T_EKKO IS INITIAL.
    Subroutine to populate the Output Table.
    PERFORM FILL_OUTTAB.
    Subroutine to build Field Catalog.
    PERFORM PREPARE_FIELD_CATALOG CHANGING T_FIELDCAT.
    CALL SCREEN 100.
    ENDIF. " IF NOT T_EKKO...
    CLASS LCL_EVENT_HANDLER DEFINITION
    Defining Class which handles events
    CLASS LCL_EVENT_HANDLER DEFINITION .
    PUBLIC SECTION .
    METHODS:
    HANDLE_HOTSPOT_CLICK
    FOR EVENT HOTSPOT_CLICK OF CL_GUI_ALV_GRID
    IMPORTING E_ROW_ID E_COLUMN_ID.
    ENDCLASS. " LCL_EVENT_HANDLER DEFINITION
    CLASS LCL_EVENT_HANDLER IMPLEMENTATION
    Implementing the Class which can handle events
    CLASS LCL_EVENT_HANDLER IMPLEMENTATION .
    *---Handle Double Click
    METHOD HANDLE_HOTSPOT_CLICK .
    Subroutine to get the HotSpot Cell information.
    PERFORM GET_CELL_INFO.
    SET PARAMETER ID 'BES' FIELD W_VALUE.
    CALL TRANSACTION 'ME23N'.
    ENDMETHOD. " HANDLE_HOTSPOT_CLICK
    ENDCLASS. " LCL_EVENT_HANDLER
    *& Module STATUS_0100 OUTPUT
    PBO Event
    MODULE STATUS_0100 OUTPUT.
    SET PF-STATUS 'OOPS'.
    SET TITLEBAR 'TIT'.
    Subroutine to fill the Variant Structure
    PERFORM FILL_VARIANT.
    IF W_GRID IS INITIAL.
    CREATE OBJECT W_GRID
    EXPORTING
    I_SHELLSTYLE = 0
    I_LIFETIME =
    I_PARENT = CL_GUI_CONTAINER=>SCREEN0
    I_APPL_EVENTS =
    I_PARENTDBG =
    I_APPLOGPARENT =
    I_GRAPHICSPARENT =
    I_NAME =
    I_FCAT_COMPLETE = SPACE
    EXCEPTIONS
    ERROR_CNTL_CREATE = 1
    ERROR_CNTL_INIT = 2
    ERROR_CNTL_LINK = 3
    ERROR_DP_CREATE = 4
    OTHERS = 5.
    IF SY-SUBRC 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF. " IF SY-SUBRC 0
    CALL METHOD W_GRID->SET_TABLE_FOR_FIRST_DISPLAY
    EXPORTING
    I_BUFFER_ACTIVE =
    I_BYPASSING_BUFFER =
    I_CONSISTENCY_CHECK =
    I_STRUCTURE_NAME =
    IS_VARIANT = W_VARIANT
    I_SAVE = 'A'
    I_DEFAULT = 'X'
    IS_LAYOUT =
    IS_PRINT =
    IT_SPECIAL_GROUPS =
    IT_TOOLBAR_EXCLUDING =
    IT_HYPERLINK =
    IT_ALV_GRAPHICS =
    IT_EXCEPT_QINFO =
    IR_SALV_ADAPTER =
    CHANGING
    IT_OUTTAB = T_OUTTAB
    IT_FIELDCATALOG = T_FIELDCAT
    IT_SORT =
    IT_FILTER =
    EXCEPTIONS
    INVALID_PARAMETER_COMBINATION = 1
    PROGRAM_ERROR = 2
    TOO_MANY_LINES = 3
    OTHERS = 4
    IF SY-SUBRC 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF. " IF SY-SUBRC 0.
    ENDIF. " IF W_GRID IS INITIAL
    CREATE OBJECT W_EVENT_CLICK.
    SET HANDLER W_EVENT_CLICK->HANDLE_HOTSPOT_CLICK FOR W_GRID.
    ENDMODULE. " STATUS_0100 OUTPUT
    *& Module USER_COMMAND_0100 INPUT
    PAI Event
    MODULE USER_COMMAND_0100 INPUT.
    CASE SY-UCOMM.
    WHEN 'BACK'.
    LEAVE TO SCREEN 0.
    WHEN 'EXIT'.
    LEAVE PROGRAM.
    WHEN 'CANCEL'.
    LEAVE TO SCREEN 0.
    ENDCASE.
    ENDMODULE. " USER_COMMAND_0100 INPUT
    *& Form PREPARE_FIELD_CATALOG
    Subroutine to build the Field catalog
    <--P_T_FIELDCAT Field Catalog Table
    FORM PREPARE_FIELD_CATALOG CHANGING PT_FIELDCAT TYPE LVC_T_FCAT .
    DATA LS_FCAT TYPE LVC_S_FCAT.
    Purchasing group...
    LS_FCAT-FIELDNAME = 'EKGRP'.
    LS_FCAT-REF_TABLE = 'EKKO'.
    LS_FCAT-INTTYPE = 'C'.
    LS_FCAT-OUTPUTLEN = '10'.
    APPEND LS_FCAT TO PT_FIELDCAT.
    CLEAR LS_FCAT.
    Purchasing Document Number...
    LS_FCAT-FIELDNAME = 'EBELN'.
    LS_FCAT-REF_TABLE = 'EKKO' .
    LS_FCAT-EMPHASIZE = 'C411'.
    LS_FCAT-INTTYPE = 'C'.
    LS_FCAT-OUTPUTLEN = '10'.
    LS_FCAT-HOTSPOT = 'X'.
    APPEND LS_FCAT TO PT_FIELDCAT .
    CLEAR LS_FCAT .
    Name of Person who Created the Object...
    LS_FCAT-FIELDNAME = 'ERNAM'.
    LS_FCAT-REF_TABLE = 'EKKO'.
    LS_FCAT-OUTPUTLEN = '15' .
    APPEND LS_FCAT TO PT_FIELDCAT.
    CLEAR LS_FCAT.
    Purchasing Document Date...
    LS_FCAT-FIELDNAME = 'BEDAT'.
    LS_FCAT-REF_TABLE = 'EKKO'.
    LS_FCAT-INTTYPE = 'C'.
    LS_FCAT-OUTPUTLEN = '10'.
    APPEND LS_FCAT TO PT_FIELDCAT.
    CLEAR LS_FCAT.
    Vendor's account number...
    LS_FCAT-FIELDNAME = 'LIFNR'.
    LS_FCAT-REF_TABLE = 'EKKO'.
    LS_FCAT-INTTYPE = 'C'.
    LS_FCAT-OUTPUTLEN = '10'.
    APPEND LS_FCAT TO PT_FIELDCAT.
    CLEAR LS_FCAT.
    Account Number of Vendor or Creditor...
    LS_FCAT-FIELDNAME = 'NAME1'.
    LS_FCAT-REF_TABLE = 'LFA1'.
    LS_FCAT-INTTYPE = 'C'.
    LS_FCAT-OUTPUTLEN = '10'.
    LS_FCAT-COLTEXT = 'Vendor Name'(001).
    LS_FCAT-SELTEXT = 'Vendor Name'(001).
    APPEND LS_FCAT TO PT_FIELDCAT.
    CLEAR LS_FCAT.
    Creation date of the change document...
    LS_FCAT-FIELDNAME = 'UDATE'.
    LS_FCAT-REF_TABLE = 'CDHDR'.
    LS_FCAT-INTTYPE = 'C'.
    LS_FCAT-OUTPUTLEN = '10'.
    LS_FCAT-COLTEXT = 'Change Date'(002).
    LS_FCAT-SELTEXT = 'Change Date'(002).
    APPEND LS_FCAT TO PT_FIELDCAT.
    CLEAR LS_FCAT.
    User name of the person responsible in change document...
    LS_FCAT-FIELDNAME = 'USERNAME'.
    LS_FCAT-REF_TABLE = 'CDHDR'.
    LS_FCAT-INTTYPE = 'C'.
    LS_FCAT-OUTPUTLEN = '10'.
    LS_FCAT-COLTEXT = 'Modified by'(003).
    LS_FCAT-SELTEXT = 'Modified by'(003).
    APPEND LS_FCAT TO PT_FIELDCAT.
    CLEAR LS_FCAT.
    Short Text Describing R/3 Repository Objects...
    LS_FCAT-FIELDNAME = 'DDTEXT'.
    LS_FCAT-REF_TABLE = 'DD04T'.
    LS_FCAT-INTTYPE = 'C'.
    LS_FCAT-OUTPUTLEN = '15'.
    APPEND LS_FCAT TO PT_FIELDCAT.
    CLEAR LS_FCAT.
    Old contents of changed field...
    LS_FCAT-FIELDNAME = 'VALUE_OLD'.
    LS_FCAT-REF_TABLE = 'CDPOS'.
    LS_FCAT-INTTYPE = 'C'.
    LS_FCAT-OUTPUTLEN = '12'.
    APPEND LS_FCAT TO PT_FIELDCAT.
    CLEAR LS_FCAT.
    New contents of changed field...
    LS_FCAT-FIELDNAME = 'VALUE_NEW'.
    LS_FCAT-REF_TABLE = 'CDPOS'.
    LS_FCAT-INTTYPE = 'C'.
    LS_FCAT-OUTPUTLEN = '12'.
    APPEND LS_FCAT TO PT_FIELDCAT.
    CLEAR LS_FCAT.
    ENDFORM. " PREPARE_FIELD_CATALOG
    *& Form SELECT_PO
    Subroutine to select all the Purchase Orders
    There are no interface parameters to be passed to this subroutine.
    FORM SELECT_PO .
    SELECT EBELN " Purchasing Document Number
    ERNAM " Name of Person who Created
    " the Object
    LIFNR " Vendor's account number
    EKGRP " Purchasing group
    BEDAT " Purchasing Document Date
    FROM EKKO
    PACKAGE SIZE 10000
    APPENDING TABLE T_EBELN
    WHERE EBELN IN S_EBELN
    AND BEDAT IN S_BEDAT.
    ENDSELECT.
    IF SY-SUBRC NE 0.
    W_FLAG = 1.
    MESSAGE S401(M8).
    ENDIF. " IF SY-SUBRC NE 0
    ENDFORM. " SELECT_PO
    *& Form SELECT_OBJ_ID
    Subroutine to select Object ID
    There are no interface parameters to be passed to this subroutine.
    FORM SELECT_OBJ_ID .
    IF NOT T_EBELN IS INITIAL.
    SELECT OBJECTCLAS " Object Class
    OBJECTID " Object value
    CHANGENR " Document change number
    USERNAME " User name
    UDATE " Creation date
    FROM CDHDR
    INTO TABLE T_CDHDR
    FOR ALL ENTRIES IN T_EBELN
    WHERE OBJECTID EQ T_EBELN-EBELN
    AND UDATE IN S_UDATE
    AND TCODE IN ('ME21N','ME22N','ME23N').
    ENDSELECT.
    IF SY-SUBRC NE 0.
    W_FLAG = 1.
    MESSAGE S833(M8) WITH 'Header Not Found'(031).
    ENDIF. " IF SY-SUBRC NE 0.
    ENDIF. " IF NOT T_EBELN IS INITIAL
    ENDFORM. " SELECT_OBJ_ID
    *& Form SELECT_CHANGED_VALUE
    Subroutine to select Changed Values
    There are no interface parameters to be passed to this subroutine.
    FORM SELECT_CHANGED_VALUE .
    IF NOT T_CDHDR IS INITIAL.
    SELECT OBJECTCLAS " Object class
    OBJECTID " Object value
    CHANGENR " Document change number
    TABNAME " Table Name
    FNAME " Field Name
    VALUE_NEW " New contents of changed field
    VALUE_OLD " Old contents of changed field
    FROM CDPOS
    PACKAGE SIZE 10000
    APPENDING TABLE T_CDPOS
    FOR ALL ENTRIES IN T_CDHDR
    WHERE OBJECTCLAS EQ T_CDHDR-OBJECTCLAS
    AND OBJECTID EQ T_CDHDR-OBJECTID
    AND CHANGENR EQ T_CDHDR-CHANGENR.
    ENDSELECT.
    IF SY-SUBRC NE 0.
    W_FLAG = 1.
    MESSAGE S833(M8) WITH 'Item Not Found'(032).
    ENDIF. " IF SY-SUBRC NE 0.
    ENDIF. " IF NOT T_CDHDR IS INITIAL
    T_CDPOS_TEMP] = T_CDPOS[.
    ENDFORM. " SELECT_CHANGED_VALUE
    *& Form SELECT_PUR_DOC
    Subroutine to select Purchase Order Details
    There are no interface parameters to be passed to this subroutine.
    FORM SELECT_PUR_DOC .
    IF NOT T_CDPOS IS INITIAL.
    SORT T_EBELN BY EBELN.
    LOOP AT T_CDPOS INTO FS_CDPOS.
    READ TABLE T_EBELN INTO FS_EBELN WITH KEY EBELN =
    FS_CDPOS-OBJECTID BINARY SEARCH.
    IF SY-SUBRC NE 0.
    DELETE TABLE T_EBELN FROM FS_EBELN.
    ENDIF. " IF SY-SUBRC NE 0.
    ENDLOOP. " LOOP AT T_CDPOS...
    LOOP AT T_EBELN INTO FS_EBELN.
    MOVE FS_EBELN-EBELN TO FS_EKKO-EBELN.
    MOVE FS_EBELN-ERNAM TO FS_EKKO-ERNAM.
    MOVE FS_EBELN-LIFNR TO FS_EKKO-LIFNR.
    MOVE FS_EBELN-EKGRP TO FS_EKKO-EKGRP.
    MOVE FS_EBELN-BEDAT TO FS_EKKO-BEDAT.
    APPEND FS_EKKO TO T_EKKO.
    ENDLOOP. " LOOP AT T_EBELN...
    T_EKKO_TEMP] = T_EKKO[.
    ENDIF. " IF NOT T_CDPOS IS INITIAL
    ENDFORM. " SELECT_PUR_DOC
    *& Form SELECT_VENDOR
    Subroutine to select Vendor details
    There are no interface parameters to be passed to this subroutine.
    FORM SELECT_VENDOR .
    IF NOT T_EKKO IS INITIAL.
    SORT T_EKKO_TEMP BY LIFNR.
    DELETE ADJACENT DUPLICATES FROM T_EKKO_TEMP COMPARING LIFNR.
    SELECT LIFNR " Account Number of Vendor or
    " Creditor
    NAME1 " Name 1
    FROM LFA1
    INTO TABLE T_LFA1
    FOR ALL ENTRIES IN T_EKKO_TEMP
    WHERE LIFNR EQ T_EKKO_TEMP-LIFNR.
    IF SY-SUBRC NE 0.
    MESSAGE S002(M8) WITH 'Master Details'(033).
    ENDIF. " IF SY-SUBRC NE 0.
    ENDIF. " IF NOT T_EKKO IS INITIAL
    ENDFORM. " SELECT_VENDOR
    *& Form DESCRIPTION
    Subroutine to get the description
    There are no interface parameters to be passed to this subroutine.
    FORM DESCRIPTION .
    IF NOT T_CDPOS IS INITIAL.
    SORT T_CDPOS_TEMP BY TABNAME FNAME.
    DELETE ADJACENT DUPLICATES FROM T_CDPOS_TEMP COMPARING TABNAME FNAME
    SELECT TABNAME " Table Name
    FIELDNAME " Field Name
    ROLLNAME " Data element
    FROM DD03L
    INTO TABLE T_DATAELE
    FOR ALL ENTRIES IN T_CDPOS_TEMP
    WHERE TABNAME EQ T_CDPOS_TEMP-TABNAME
    AND FIELDNAME EQ T_CDPOS_TEMP-FNAME.
    IF NOT T_DATAELE IS INITIAL.
    T_DATAELE_TEMP] = T_DATAELE[.
    SORT T_DATAELE_TEMP BY ROLLNAME.
    DELETE ADJACENT DUPLICATES FROM T_DATAELE_TEMP COMPARING ROLLNAME.
    SELECT ROLLNAME " Data element
    DDTEXT " Short Text Describing R/3
    " Repository Objects
    FROM DD04T
    INTO TABLE T_TEXT
    FOR ALL ENTRIES IN T_DATAELE_TEMP
    WHERE ROLLNAME EQ T_DATAELE_TEMP-ROLLNAME
    AND DDLANGUAGE EQ SY-LANGU.
    IF SY-SUBRC NE 0.
    EXIT.
    ENDIF. " IF SY-SUBRC NE 0.
    ENDIF. " IF NOT T_DATAELE IS INITIAL.
    ENDIF. " IF NOT T_CDPOS IS INITIAL.
    ENDFORM. " DESCRIPTION
    *& Form FILL_OUTTAB
    Subroutine to populate the Outtab
    There are no interface parameters to be passed to this subroutine.
    FORM FILL_OUTTAB .
    SORT T_CDHDR BY OBJECTCLAS OBJECTID CHANGENR.
    SORT T_EKKO BY EBELN.
    SORT T_LFA1 BY LIFNR.
    SORT T_DATAELE BY TABNAME FIELDNAME.
    SORT T_TEXT BY ROLLNAME.
    LOOP AT T_CDPOS INTO FS_CDPOS.
    READ TABLE T_CDHDR INTO FS_CDHDR WITH KEY
    OBJECTCLAS = FS_CDPOS-OBJECTCLAS
    OBJECTID = FS_CDPOS-OBJECTID
    CHANGENR = FS_CDPOS-CHANGENR
    BINARY SEARCH.
    IF SY-SUBRC EQ 0.
    MOVE FS_CDHDR-USERNAME TO FS_OUTTAB-USERNAME.
    MOVE FS_CDHDR-UDATE TO FS_OUTTAB-UDATE.
    READ TABLE T_EKKO INTO FS_EKKO WITH KEY
    EBELN = FS_CDHDR-OBJECTID
    BINARY SEARCH.
    IF SY-SUBRC EQ 0.
    MOVE FS_EKKO-EBELN TO FS_OUTTAB-EBELN.
    MOVE FS_EKKO-ERNAM TO FS_OUTTAB-ERNAM.
    MOVE FS_EKKO-LIFNR TO FS_OUTTAB-LIFNR.
    MOVE FS_EKKO-EKGRP TO FS_OUTTAB-EKGRP.
    MOVE FS_EKKO-BEDAT TO FS_OUTTAB-BEDAT.
    READ TABLE T_LFA1 INTO FS_LFA1 WITH KEY
    LIFNR = FS_EKKO-LIFNR
    BINARY SEARCH.
    IF SY-SUBRC EQ 0.
    MOVE FS_LFA1-NAME1 TO FS_OUTTAB-NAME1.
    ENDIF. " IF SY-SUBRC EQ 0.
    ENDIF. " IF SY-SUBRC EQ 0.
    ENDIF. " IF SY-SUBRC EQ 0.
    MOVE FS_CDPOS-VALUE_NEW TO FS_OUTTAB-VALUE_NEW.
    MOVE FS_CDPOS-VALUE_OLD TO FS_OUTTAB-VALUE_OLD.
    READ TABLE T_DATAELE INTO FS_DATAELE WITH KEY
    TABNAME = FS_CDPOS-TABNAME
    FIELDNAME = FS_CDPOS-FNAME
    BINARY SEARCH.
    IF SY-SUBRC EQ 0.
    READ TABLE T_TEXT INTO FS_TEXT WITH KEY
    ROLLNAME = FS_DATAELE-ROLLNAME
    BINARY SEARCH.
    IF SY-SUBRC EQ 0.
    MOVE FS_TEXT-DDTEXT TO FS_OUTTAB-DDTEXT.
    ENDIF. " IF SY-SUBRC EQ 0.
    ENDIF. " IF SY-SUBRC EQ 0.
    APPEND FS_OUTTAB TO T_OUTTAB.
    CLEAR FS_OUTTAB.
    ENDLOOP.
    ENDFORM. " FILL_OUTTAB
    *& Form GET_CELL_INFO
    Subroutine to get the Cell Information
    --> W_VALUE Holds the value of Hotspot clicked
    FORM GET_CELL_INFO .
    CALL METHOD W_GRID->GET_CURRENT_CELL
    IMPORTING
    E_ROW =
    E_VALUE = W_VALUE
    E_COL =
    ES_ROW_ID =
    ES_COL_ID =
    ES_ROW_NO =
    ENDFORM. " GET_CELL_INFO
    *& Form VALIDATE_PD_NUM
    Subroutine to validate Purchase Document Number
    There are no interface parameters to be passed to this subroutine.
    FORM VALIDATE_PD_NUM .
    IF NOT S_EBELN[] IS INITIAL.
    SELECT EBELN " Purchase Document Number
    FROM EKKO
    INTO W_EBELN
    UP TO 1 ROWS
    WHERE EBELN IN S_EBELN.
    ENDSELECT.
    IF SY-SUBRC NE 0.
    CLEAR SSCRFIELDS-UCOMM.
    MESSAGE E717(M8).
    ENDIF. " IF SY-SUBRC NE 0
    ENDIF. " IF NOT S_EBELN[]...
    ENDFORM. " VALIDATE_PD_NUM
    *& Form VALIDATE_VEN_NUM
    Subroutine to validate Vendor Number
    There are no interface parameters to be passed to this subroutine.
    FORM VALIDATE_VEN_NUM .
    IF NOT S_LIFNR[] IS INITIAL.
    SELECT LIFNR " Vendor Number
    FROM LFA1
    INTO W_LIFNR
    UP TO 1 ROWS
    WHERE LIFNR IN S_LIFNR.
    ENDSELECT.
    IF SY-SUBRC NE 0.
    CLEAR SSCRFIELDS-UCOMM.
    MESSAGE E002(M8) WITH W_SPACE.
    ENDIF. " IF SY-SUBRC NE 0
    ENDIF. " IF NOT S_LIFNR[]...
    ENDFORM. " VALIDATE_VEN_NUM
    *& Form VALIDATE_PUR_GRP
    Subroutine to validate the Purchase Group
    There are no interface parameters to be passed to this subroutine.
    FORM VALIDATE_PUR_GRP .
    IF NOT S_EKGRP[] IS INITIAL.
    SELECT EKGRP " Purchase Group
    FROM T024
    INTO W_EKGRP
    UP TO 1 ROWS
    WHERE EKGRP IN S_EKGRP.
    ENDSELECT.
    IF SY-SUBRC NE 0.
    CLEAR SSCRFIELDS-UCOMM.
    MESSAGE E622(M8) WITH W_SPACE.
    ENDIF. " IF SY-SUBRC NE 0
    ENDIF. " IF NOT S_EKFRP[]...
    ENDFORM. " VALIDATE_PUR_GRP
    *& Form FILL_VARIANT
    Subroutine to fill the Variant Structure
    There are no interface parameters to be passed to this subroutine
    FORM FILL_VARIANT .
    Filling the Variant structure
    W_VARIANT-REPORT = SY-REPID.
    W_VARIANT-USERNAME = SY-UNAME.
    ENDFORM. " FILL_VARIANT
    REPORT YMS_HIERSEQLISTDISPLAY .
    Program with FM REUSE_ALV_HIERSEQ_LIST_DISPLAY *
    Author : Michel PIOUD *
    Email : mpioudyahoo.fr HomePage : http://www.geocities.com/mpioud *
    TYPE-POOLS: slis. " ALV Global types
    CONSTANTS :
    c_x VALUE 'X',
    c_gt_vbap TYPE SLIS_TABNAME VALUE 'GT_VBAP',
    c_gt_vbak TYPE SLIS_TABNAME VALUE 'GT_VBAK'.
    SELECTION-SCREEN :
    SKIP, BEGIN OF LINE,COMMENT 5(27) v_1 FOR FIELD p_max. "#EC NEEDED
    PARAMETERS p_max(02) TYPE n DEFAULT '10' OBLIGATORY.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN :
    SKIP, BEGIN OF LINE,COMMENT 5(27) v_2 FOR FIELD p_expand. "#EC NEEDED
    PARAMETERS p_expand AS CHECKBOX DEFAULT c_x.
    SELECTION-SCREEN END OF LINE.
    TYPES :
    1st Table
    BEGIN OF ty_vbak,
    vbeln TYPE vbak-vbeln, " Sales document
    kunnr TYPE vbak-kunnr, " Sold-to party
    netwr TYPE vbak-netwr, " Net Value of the Sales Order
    erdat TYPE vbak-erdat, " Creation date
    waerk TYPE vbak-waerk, " SD document currency
    expand TYPE xfeld,
    END OF ty_vbak,
    2nd Table
    BEGIN OF ty_vbap,
    vbeln TYPE vbap-vbeln, " Sales document
    posnr TYPE vbap-posnr, " Sales document
    matnr TYPE vbap-matnr, " Material number
    netwr TYPE vbap-netwr, " Net Value of the Sales Order
    waerk TYPE vbap-waerk, " SD document currency
    END OF ty_vbap.
    DATA :
    1st Table
    gt_vbak TYPE TABLE OF ty_vbak,
    2nd Table
    gt_vbap TYPE TABLE OF ty_vbap.
    INITIALIZATION.
    v_1 = 'Maximum of records to read'.
    v_2 = 'With ''EXPAND'' field'.
    START-OF-SELECTION.
    Read Sales Document: Header Data
    SELECT vbeln kunnr netwr waerk erdat
    FROM vbak
    UP TO p_max ROWS
    INTO CORRESPONDING FIELDS OF TABLE gt_vbak.
    IF NOT gt_vbak[] IS INITIAL.
    Read Sales Document: Item Data
    SELECT vbeln posnr matnr netwr waerk
    FROM vbap
    INTO CORRESPONDING FIELDS OF TABLE gt_vbap
    FOR ALL ENTRIES IN gt_vbak
    WHERE vbeln = gt_vbak-vbeln.
    ENDIF.
    PERFORM f_display.
    Form F_DISPLAY
    FORM f_display.
    Macro definition
    DEFINE m_fieldcat.
    ls_fieldcat-tabname = &1.
    ls_fieldcat-fieldname = &2.
    ls_fieldcat-ref_tabname = &3.
    ls_fieldcat-cfieldname = &4. " Field with currency unit
    append ls_fieldcat to lt_fieldcat.
    END-OF-DEFINITION.
    DEFINE m_sort.
    ls_sort-tabname = &1.
    ls_sort-fieldname = &2.
    ls_sort-up = c_x.
    append ls_sort to lt_sort.
    END-OF-DEFINITION.
    DATA:
    ls_layout TYPE slis_layout_alv,
    ls_keyinfo TYPE slis_keyinfo_alv,
    ls_sort TYPE slis_sortinfo_alv,
    lt_sort TYPE slis_t_sortinfo_alv," Sort table
    ls_fieldcat TYPE slis_fieldcat_alv,
    lt_fieldcat TYPE slis_t_fieldcat_alv." Field catalog
    ls_layout-group_change_edit = c_x.
    ls_layout-colwidth_optimize = c_x.
    ls_layout-zebra = c_x.
    ls_layout-detail_popup = c_x.
    ls_layout-get_selinfos = c_x.
    IF p_expand = c_x.
    ls_layout-expand_fieldname = 'EXPAND'.
    ENDIF.
    Build field catalog and sort table
    m_fieldcat c_gt_vbak 'VBELN' 'VBAK' ''.
    m_fieldcat c_gt_vbak 'KUNNR' 'VBAK' ''.
    m_fieldcat c_gt_vbak 'NETWR' 'VBAK' 'WAERK'.
    m_fieldcat c_gt_vbak 'WAERK' 'VBAK' ''.
    m_fieldcat c_gt_vbak 'ERDAT' 'VBAK' ''.
    m_fieldcat c_gt_vbap 'POSNR' 'VBAP' ''.
    m_fieldcat c_gt_vbap 'MATNR' 'VBAP' ''.
    m_fieldcat c_gt_vbap 'NETWR' 'VBAP' 'WAERK'.
    m_fieldcat c_gt_vbap 'WAERK' 'VBAP' ''.
    m_sort c_gt_vbak 'KUNNR'.
    m_sort c_gt_vbap 'NETWR'.
    ls_keyinfo-header01 = 'VBELN'.
    ls_keyinfo-item01 = 'VBELN'.
    ls_keyinfo-item02 = 'POSNR'.
    Dipslay Hierarchical list
    CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
    EXPORTING
    i_callback_program = sy-cprog
    i_callback_user_command = 'USER_COMMAND'
    is_layout = ls_layout
    it_fieldcat = lt_fieldcat
    it_sort = lt_sort
    i_tabname_header = c_gt_vbak
    i_tabname_item = c_gt_vbap
    is_keyinfo = ls_keyinfo
    TABLES
    t_outtab_header = gt_vbak
    t_outtab_item = gt_vbap
    EXCEPTIONS
    program_error = 1
    OTHERS = 2.
    IF sy-subrc 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    ENDFORM. " F_LIST_DISPLAY
    Form USER_COMMAND *
    FORM user_command USING i_ucomm TYPE sy-ucomm
    is_selfield TYPE slis_selfield. "#EC CALLED
    DATA ls_vbak TYPE ty_vbak.
    CASE i_ucomm.
    WHEN '&IC1'. " Pick
    CASE is_selfield-tabname.
    WHEN c_gt_vbap.
    WHEN c_gt_vbak.
    READ TABLE gt_vbak INDEX is_selfield-tabindex INTO ls_vbak.
    IF sy-subrc EQ 0.
    Sales order number
    SET PARAMETER ID 'AUN' FIELD ls_vbak-vbeln.
    Display Sales Order
    CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.
    ENDIF.
    ENDCASE.
    ENDCASE.
    ENDFORM. " USER_COMMAND
    Kindly Reward Points If You Found The Reply Helpful,
    Cheers,
    Chaitanya.

  • What is the Java default ORB implementation class?

    I have a web application deployed on the Sun Java System Application Server 8. This application will also act as a CORBA client by invoking remote methods on another CORBA server.
    Our first approach was to use the ORB provided by the Sun App Server. But whenever the code reaches the point to initialize the ORB:
    orb = ORB.init(as, null); we encountered such exceptions:
    [#|2005-02-03T00:38:43.912-0600|WARNING|sun-appserver-pe8.0.0_01|javax.enterpris
    e.resource.corba._DEFAULT_.rpc.transport|_ThreadID=14;|"IOP00710209: (INTERNAL)
    Unable to create listener thread on the specific port"                         
    org.omg.CORBA.INTERNAL:   vmcid: SUN  minor code: 209  completed: No  
    at com.sun.corba.ee.impl.logging.ORBUtilSystemException.createListenerFa
    iled(ORBUtilSystemException.java:3142)                                         
            at com.sun.corba.ee.impl.logging.ORBUtilSystemException.createListenerFa
    iled(ORBUtilSystemException.java:3160)     When we deployed the same app on Tomcat, it worked fine. We later reasoned the exception was happening on the Sun App Server because perhaps it was trying to initialize another ORB with the same properties as the one initialized by the Sun App Server, and thus was trying to create another listener on a port already in use.
    On tomcat, the ORB used was the default ORB provided by Java. Thus, we thought we would try 'overriding' the ORB properties for the Sun App Server by specifiying this in the ORB.init() method:
            String as[] = null;
         Properties orbProperties = new Properties();
         orbProperties.put("org.omg.CORBA.ORBClass","com.sun.corba.se.internal.iiop.ORB");
         orbProperties.put("org.omg.CORBA.ORBSingletonClass","com.sun.corba.se.internal.iiop.ORB");
            orb = ORB.init(as, orbProperties);But when executing this, we get the exception as follows:
    Caused by: org.omg.CORBA.INITIALIZE: can't instantiate custom socket factory: co
    m.sun.enterprise.iiop.IIOPSSLSocketFactory  vmcid: 0x0  minor code: 0  completed
    : No                                                                           
            at com.sun.corba.se.internal.corba.ORB.parseProperties(ORB.java:1250)  
            at com.sun.corba.se.internal.POA.POAORB.parseProperties(POAORB.java:267)
            at com.sun.corba.se.internal.Interceptors.PIORB.parseProperties(PIORB.ja
    va:341)                                                                        
            at com.sun.corba.se.internal.corba.ORB.set_parameters(ORB.java:460)    
            at com.sun.corba.se.internal.POA.POAORB.set_parameters(POAORB.java:153)
            at com.sun.corba.se.internal.Interceptors.PIORB.set_parameters(PIORB.jav
    a:333)                                                                         
            at org.omg.CORBA.ORB.init(ORB.java:337)                                
            at com.covansys.ipceuc.corbalogic.SessionManager.<clinit>(SessionManager
    .java:159)      Some Sun sites mentioned that com.sun.CORBA.iiop.ORB is the Java ORB implementation. When trying to use this, we got a ClassNotFoundException.
    Also tried the following classes:
    com.sun.corba.se.internal.corba.ORB
    com.sun.corba.se.internal.core.ORB
    com.sun.corba.se.internal.org.omg.ORBAll of them reported exceptions as follows:
    Caused by: org.omg.CORBA.INITIALIZE: can't instantiate default ORB implementati
    n org.omg.CORBA.ORB  vmcid: 0x0  minor code: 0  completed: No                 
            at org.omg.CORBA.ORB.create_impl(ORB.java:297)                        
            at org.omg.CORBA.ORB.init(ORB.java:336)                               
            at com.covansys.ipceuc.corbalogic.SessionManager.<clinit>(SessionManage
    .java:158)                                                                    
            ... 55 more                                                           
    Caused by: java.lang.InstantiationException                                   
            at sun.reflect.InstantiationExceptionConstructorAccessorImpl.newInstanc
    (InstantiationExceptionConstructorAccessorImpl.java:30)                       
            at java.lang.reflect.Constructor.newInstance(Constructor.java:274)    
            at java.lang.Class.newInstance0(Class.java:308)                       
            at java.lang.Class.newInstance(Class.java:261)                        
            at org.omg.CORBA.ORB.create_impl(ORB.java:295)                        
            ... 57 more                                                           
    |#]                                                                            Anyone know what the Java ORB implementation class is, or whether this is possible at all?
    Thanks in advance.

    Hello
    The defaults for JDK 1.4.2 (at least) are shown it the code below:
            Properties p = new Properties ();
            p.put ("org.omg.CORBA.ORBSingletonClass",
                   "com.sun.corba.se.internal.corba.ORBSingleton");
            p.put ("org.omg.CORBA.ORBClass",
                   "com.sun.corba.se.internal.Interceptors.PIORB");
            p.put ("javax.rmi.CORBA.UtilClass",
                   "com.sun.corba.se.internal.POA.ShutdownUtilDelegate");
            p.put ("javax.rmi.CORBA.PortableRemoteObjectClass",
                   "com.sun.corba.se.internal.javax.rmi.PortableRemoteObject");
            System.setProperties (p);Of course you can use this code to set these defaults back. Be careful, if you do this inside Weblogic, for instance, it will likely abend.
    []'s
    Marcond

  • Does any one implemented solution for httpservlet request/response object in IWSDLInterceptor implemented class?

    I am trying to handle Producer not available situation in which I am using Interceptor IWSDLInterceptor in WLP 10.3.4. I am able to retrieve exception using onWSDLException but from here if I have to forward my pageURL object I need httpservlet request and response. I tried my own filter class to have its own customize request and also tried it out all other Interceptor to see if any one can handle IOException. I did manage to throw my own Customize exception but  that also did not work out as Page does not have any backing file or any supportive Controller class.
    Does any one implemented solution for httpservlet request/response object in IWSDLInterceptor implemented class? or do we have any specific documentation in regards to this? As I am not able to find much martial on IWSDLInterceptor except Java API from Oracle and article defining Two way SSL handshake Producer.
    Any kind of help is appreciated.
    Thanks
    PT

    Thanks Emmanuel for your response but render behavior is not available for IWSDLRequestContext/IWDSLResponseContext object which IWSDLInterceptor uses for implementation.
    Let me put my question in little simpler manner. May be my approach to the problem is not proper.
    Problem : Handle Producer Not available (no application exists on server) on consumer side.
    So far tried approach : Producer is not running then I am able to handle that TransportException at IInitCookieInterceptor/IHandleEventInterceptor onFault behaviour but in the case of Producer not even exists Consumer try to get WSDL fetch operation and failed with FileNotFoundException.
    To handle this exception, I used IWSDLInterceptor which is available under IWSDLInterceptor.OnWSDLException (Oracle Fusion Middleware Java API for Oracle WebLogic Portal)
    I am able to catch the exception but problem arise when application needs to forward at specific page/render portlet for this situation. For that it required request/response object but IWSDLInterceptor does not give any kind of instances to redirect request as there is no direct access to HTTPServlet request/response object.
    I tried my custom request object to use there. I tried out custom filter object of IWSDLrequestContext. nothing works.
    One approach works is to put producer WSDL file at consumer level. But in that, you need to handle different producer files for different environment. Which I don't think its a good approach.
    eAny one Let me know if my approach to the problem/scenario is wrong. Or if I am missing out any other supporting interface which also required to handle this scenario. or I am using wrong interface for this scenario.
    Thanks for your help in advance.
    PT.

  • Implementation Class

    Hello!
    How can i change implementation class of text field programmatically in run time?
    Thanks

    Hello Francois,
    I wounder if you could help me.
    I am trying to use FBean.Set_Indexed_Property and
    NewLabel := FBean.Get_Indexed_Property
    i need to retrieve some values and it will be nice to use those functions
    this is my java class
    package sumanumeros;
    * @author madq80
    * Para cambiar la plantilla para este comentario de tipo generado vaya a
    * Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
    import java.io.*;
    import java.text.MessageFormat;
    import java.util.*;
    import org.jdom.Document;
    import org.jdom.Element;
    import org.jdom.input.SAXBuilder;
    import org.jdom.xpath.XPath;
    import oracle.forms.ui.VBean;
    public class SumaNumeros extends VBean {
         public static void init(){
         public static void main(String[] args) {
              SumaNumeros s = new SumaNumeros();
              //s.suma(12,8);
              s.leerfichero("c:\\resulbusqueda.xml");
         public String letras (String letra1, String letra2){
                   String resutado = letra1+"-->"+letra2;
                        System.out.print("retur"+resutado );
                   return resutado;
         }//letras
         public int suma (int numero1, int numero2){
              int resutado = numero1+ numero2;
                   System.out.print("retur"+resutado );
              return resutado;
         }//suma
         public String leerfichero(String nombrefichero ){
              List list=null;
              String lostitulos = null;
              System.out.print("nombrefichero 1"+nombrefichero +"\n");
              try {
                                       System.out.print("nombrefichero 2"+nombrefichero +"\n");
                                       List DocumentTitle = new ArrayList();
                                       RandomAccessFile raf = new RandomAccessFile (nombrefichero, "r" );
                                       byte[] buffer = new byte [ (int) raf.length () ];
                                       raf.readFully ( buffer );
                                       raf.close ();
                                       String srcfile = new String ( buffer );
                                       String pattern = "{0}<response>{1}</response>{2}";
                                       MessageFormat mf = new MessageFormat ( pattern );
                                       Object[] obj = mf.parse ( srcfile );
                                       String response = (String) obj[1];
                                       ByteArrayInputStream bais = new ByteArrayInputStream ( response.getBytes () );
                                       SAXBuilder saxb = new SAXBuilder ( false );
                                       Document doc = saxb.build ( bais );
                                       Element root = doc.getRootElement ();
                                       System.err.println ( root );
                                       XPath xpath = XPath.newInstance ( "/xml/rs:data/z:row" );
                                       list = xpath.selectNodes ( doc );
                                       for ( int i = 0, len = list.size () ; i < len ; i++ )
                                            Element item = (Element) list.get ( i );
                                            System.err.println ( "--> " + item.getAttributeValue ( "DocumentTitle" ) );
                                            DocumentTitle.add(item.getAttributeValue ( "DocumentTitle" ));
                                            System.out.print("-->"+item.getAttributeValue ( "DocumentTitle" ) +"\n");
                                       Iterator iter = DocumentTitle.iterator();
                                       while (iter.hasNext()){
                                            String titulo = (String)iter.next();
                                            if(lostitulos == null) {
                                                 lostitulos = titulo;
                                            }else{
                                                 lostitulos = lostitulos+","+titulo;
                                            //System.out.println("******************************************");
                                            System.out.println (lostitulos);
                        }catch (Exception e){
                                       e.printStackTrace();
                   System.out.print("nombre 1"+lostitulos +"\n");
                   return lostitulos;
    and this is my code on the form
    declare
    num integer;
    hBean ITEM := Find_Item('BLOCK3.CIM');
    argList FBEAN.ARGLIST;
    v_result varchar2(2000);
    NewLabel varchar2(2000);
    begin
         FBEAN.SET_LOGGING_MODE(hBean,1,FBEAN.LOG_ALL);
         -- Get the file name --
    If :GLOBAL.IS_BEAN_REGISTER = 'false' Then
    FBean.Register_Bean(hBean,1,'sumanumeros.SumaNumeros');
    :GLOBAL.IS_BEAN_REGISTER := 'true' ;
    End if ;
    argList := FBean.Create_ArgList;
    FBEAN.ADD_ARG(argList,'c:\\resulbusqueda.xml');
    v_result := FBean.Invoke_char('BLOCK3.CIM',1,'leerfichero',argList);
    info('v_result'||v_result);
    FBean.Set_Indexed_Property('BLOCK3.TITULOS',
         1,
    'titulos',
    FBEAN.ALL_ROWS,
    'Grommets, Widgets, Bolts, and Screws');
    FBean.Get_Indexed_Property
    NewLabel := FBean.Get_Indexed_Char_Property('BLOCK3.TITULOS',
    1,
    'titulos',
    1);
    info('NewLabel'||NewLabel); */
    FBean.Set_Indexed_Property('BLOCK3.CIM',1,'leerfichero', FBEAN.ALL_ROWS,v_result);
    NewLabel := FBean.Get_Indexed_Property('BLOCK3.CIM', 1, 'leerfichero', 1);
    info('NewLabel'||NewLabel);
    exception
              when others then
         info(sqlcode||' '||sqlerrm);
    end;
    the values that i get here
    v_result := FBean.Invoke_char('BLOCK3.CIM',1,'leerfichero',argList);
    are
    ppp,asdasss,prueba,Anticipo a cuenta/Pet. pago a cuenta,Revista,Esto es una prueba,Comunicacion Siniestro,Comunicación .............
    but when i use
    FBean.Set_Indexed_Property('BLOCK3.CIM',1,'leerfichero', FBEAN.ALL_ROWS,v_result);
    NewLabel := FBean.Get_Indexed_Property('BLOCK3.CIM', 1, 'leerfichero', 1);
    it does not work i do not know what to do
    do i have to treat the string with substr ???
    many thanks and sorry to ask you againg

  • Kodo cannot find metadata for valid persistent class?

    Hi!
    I still cannot make 2.4.0 working. It just refuses loading valid
    persistent class. I've tried to preload class by calling Class c =
    Category.class but it didn't help.
    Tried it on 2.4.0 RC3.
    The stacktrace:
    2002-12-05 13:56:14,377 ERROR [org.jboss.ejb.plugins.LogInterceptor]
    RuntimeException:
    javax.jdo.JDOUserException: No database mapping was found for type
    "net.xtrim.crm.troubleticket.object.Category@cf9bf0". Make sure that
    "net.xtrim.crm.troubleticket.object.Category@cf9bf0" has been enhanced.
    at
    com.solarmetric.kodo.impl.jdbc.runtime.JDBCStoreManager.getClassMapping(JDBC
    StoreManager.java:835)
    at
    com.solarmetric.kodo.impl.jdbc.runtime.JDBCStoreManager.initialize(JDBCStore
    Manager.java:262)
    at
    com.solarmetric.kodo.runtime.datacache.DataCacheStoreManager.initialize(Data
    CacheStoreManager.java:255)
    at
    com.solarmetric.kodo.runtime.StateManagerImpl.loadInitialState(StateManagerI
    mpl.java:174)
    at
    com.solarmetric.kodo.runtime.PersistenceManagerImpl.getObjectByIdFilter(Pers
    istenceManagerImpl.java:986)
    at
    com.solarmetric.kodo.runtime.PersistenceManagerImpl.getObjectById(Persistenc
    eManagerImpl.java:905)
    at
    com.solarmetric.kodo.impl.jdbc.ormapping.OneToOneMapping.load(OneToOneMappin
    g.java:147)
    at
    com.solarmetric.kodo.impl.jdbc.runtime.JDBCStoreManager.load(JDBCStoreManage
    r.java:366)
    at
    com.solarmetric.kodo.runtime.datacache.DataCacheStoreManager.load(DataCacheS
    toreManager.java:284)
    at
    com.solarmetric.kodo.runtime.StateManagerImpl.loadField(StateManagerImpl.jav
    a:1987)
    at
    com.solarmetric.kodo.runtime.StateManagerImpl.isLoaded(StateManagerImpl.java
    :721)
    at net.xtrim.crm.troubleticket.object.Type.jdoGetcategory(Type.java)
    at net.xtrim.crm.troubleticket.object.Type.getCategory(Type.java:147)
    at
    net.xtrim.crm.system.persistence.TroubleTicketFactory.getTroubleTicketType(T
    roubleTicketFactory.java:148)
    at
    net.xtrim.crm.system.persistence.TroubleTicketFactory.getTroubleTicket(Troub
    leTicketFactory.java:74)
    at
    net.xtrim.crm.system.persistence.TroubleTicketFactory.getDTO(TroubleTicketFa
    ctory.java:280)
    at
    net.xtrim.crm.troubleticket.ejb.TroubleTicketFacadeBean.getLastTicketsForCur
    rentUser(TroubleTicketFacadeBean.java:1015)
    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
    org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(Stateles
    sSessionContainer.java:660)
    at
    org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(Cach
    edConnectionInterceptor.java:186)
    at
    org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSe
    ssionInstanceInterceptor.java:77)
    at
    org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor
    ..java:107)
    at
    org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.
    java:178)
    at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:60)
    at
    org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:13
    0)
    at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:204)
    at
    org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContainer.jav
    a:313)
    at
    org.jboss.ejb.plugins.local.BaseLocalContainerInvoker.invoke(BaseLocalContai
    nerInvoker.java:301)
    at
    org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionPro
    xy.java:81)
    at $Proxy64.getLastTicketsForCurrentUser(Unknown Source)
    at net.xtrim.crm.web.WebManager.getListTTCreatedByUser(WebManager.java:58)
    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
    org.apache.struts.util.PropertyUtils.getSimpleProperty(PropertyUtils.java:71
    7)
    at
    org.apache.struts.util.PropertyUtils.getNestedProperty(PropertyUtils.java:42
    6)
    at org.apache.struts.util.PropertyUtils.getProperty(PropertyUtils.java:453)
    at org.apache.struts.util.RequestUtils.lookup(RequestUtils.java:503)
    at
    org.apache.struts.taglib.logic.IterateTag.doStartTag(IterateTag.java:302)
    at org.apache.jsp.home$jsp._jspService(home$jsp.java:534)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at
    org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja
    va:201)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:381)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:473)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:366)
    at
    org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicatio
    nHandler.java:341)
    at net.xtrim.crm.web.LogOnFilter.doFilter(LogOnFilter.java:43)
    at
    org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicatio
    nHandler.java:333)
    at
    org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandl
    er.java:285)
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:581)
    at org.mortbay.http.HttpContext.handle(HttpContext.java:1687)
    at
    org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext
    ..java:544)
    at org.mortbay.http.HttpContext.handle(HttpContext.java:1637)
    at org.mortbay.http.HttpServer.service(HttpServer.java:875)
    at org.jboss.jetty.Jetty.service(Jetty.java:543)
    at org.mortbay.http.HttpConnection.service(HttpConnection.java:806)
    at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:956)
    at org.mortbay.http.HttpConnection.handle(HttpConnection.java:823)
    at
    org.mortbay.http.SocketListener.handleConnection(SocketListener.java:203)
    at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:290)
    at org.mortbay.util.ThreadPool$JobRunner.run(ThreadPool.java:743)
    at java.lang.Thread.run(Thread.java:536)
    2002-12-05 13:56:14,547 ERROR [net.xtrim.crm.web.WebManager]
    javax.ejb.EJBException: RuntimeException; CausedByException is:
    No database mapping was found for type
    "net.xtrim.crm.troubleticket.object.Category@cf9bf0". Make sure that
    "net.xtrim.crm.troubleticket.object.Category@cf9bf0" has been enhanced.
    2002-12-05 13:56:14,747 WARN [org.jboss.jbossweb] WARNING: Exception for
    /rt/home.jsp
    javax.servlet.jsp.JspException: Exception thrown by getter for property
    listTTCreatedByUser of bean manager
    at org.apache.struts.util.RequestUtils.lookup(RequestUtils.java:513)
    at
    org.apache.struts.taglib.logic.IterateTag.doStartTag(IterateTag.java:302)
    at org.apache.jsp.home$jsp._jspService(home$jsp.java:534)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at
    org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja
    va:201)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:381)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:473)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:366)
    at
    org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicatio
    nHandler.java:341)
    at net.xtrim.crm.web.LogOnFilter.doFilter(LogOnFilter.java:43)
    at
    org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicatio
    nHandler.java:333)
    at
    org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandl
    er.java:285)
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:581)
    at org.mortbay.http.HttpContext.handle(HttpContext.java:1687)
    at
    org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext
    ..java:544)
    at org.mortbay.http.HttpContext.handle(HttpContext.java:1637)
    at org.mortbay.http.HttpServer.service(HttpServer.java:875)
    at org.jboss.jetty.Jetty.service(Jetty.java:543)
    at org.mortbay.http.HttpConnection.service(HttpConnection.java:806)
    at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:956)
    at org.mortbay.http.HttpConnection.handle(HttpConnection.java:823)
    at
    org.mortbay.http.SocketListener.handleConnection(SocketListener.java:203)
    at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:290)
    at org.mortbay.util.ThreadPool$JobRunner.run(ThreadPool.java:743)
    at java.lang.Thread.run(Thread.java:536)
    During startup I see messages in JBoss log file saying that Category has
    been loaded successfully.
    Please look at the attached file that contains part of the JBoss log.
    begin 666 kodo.log
    M,C P,BTQ,BTP-2 Q,SHU-CHQ,2PS,3(@1$5"54<@6V-O;2YS;VQA<FUE=')I
    M8RYK;V1O+E)U;G1I;65=(&-O;2YS;VQA<FUE=')I8RYK;V1O+FEM<&PN:F1B
    M8RYE92Y%15!E<G-I<W1E;F-E36%N86=E<D9A8W1O<GE ,6%F-SAC93H@<V5T
    M=7 -"C(P,#(M,3(M,#4@,3,Z-38Z,3$L,S4R($1%0E5'(%MC;VTN<V]L87)M
    M971R:6,N:V]D;RY2=6YT:6UE72!C;VTN<V]L87)M971R:6,N:V]D;RYI;7!L
    M+FID8F,N964N145097)S:7-T96YC94UA;F%G97)&86-T;W)Y0#%A9C<X8V4Z
    M('-E='5P.B!D969E<G)I;F<@<F5G:7-T<F%T:6]N(&]F.B!N970N>'1R:6TN
    M8W)M+F-U<W1O;65R+F]B:F5C="Y#=7-T;VUE<D R-S-F-&4-"C(P,#(M,3(M
    M,#4@,3,Z-38Z,3$L,S4R($1%0E5'(%MC;VTN<V]L87)M971R:6,N:V]D;RY2
    M=6YT:6UE72!C;VTN<V]L87)M971R:6,N:V]D;RYI;7!L+FID8F,N964N1450
    M97)S:7-T96YC94UA;F%G97)&86-T;W)Y0#%A9C<X8V4Z(')E9VES=&5R0VQA
    M<W,Z(&YE="YX=')I;2YC<FTN8W5S=&]M97(N;V)J96-T+D-U<W1O;65R0#(W
    M,V8T93T^9F%L<V4-"C(P,#(M,3(M,#4@,3,Z-38Z,3$L,S4R($1%0E5'(%MC
    M;VTN<V]L87)M971R:6,N:V]D;RY2=6YT:6UE72!C;VTN<V]L87)M971R:6,N
    M:V]D;RYI;7!L+FID8F,N964N145097)S:7-T96YC94UA;F%G97)&86-T;W)Y
    M0#%A9C<X8V4Z('-E='5P.B!D969E<G)I;F<@<F5G:7-T<F%T:6]N(&]F.B!N
    M970N>'1R:6TN8W)M+F1I8W1I;VYA<GDN;V)J96-T+D-U<G)E;F-Y0#0S,34S
    M8PT*,C P,BTQ,BTP-2 Q,SHU-CHQ,2PS-3(@1$5"54<@6V-O;2YS;VQA<FUE
    M=')I8RYK;V1O+E)U;G1I;65=(&-O;2YS;VQA<FUE=')I8RYK;V1O+FEM<&PN
    M:F1B8RYE92Y%15!E<G-I<W1E;F-E36%N86=E<D9A8W1O<GE ,6%F-SAC93H@
    M<F5G:7-T97)#;&%S<SH@;F5T+GAT<FEM+F-R;2YD:6-T:6]N87)Y+F]B:F5C
    M="Y#=7)R96YC>4 T,S$U,V,]/F9A;'-E#0HR,# R+3$R+3 U(#$S.C4V.C$Q
    M+#0W,B!)3D9/("!;8V]M+G-O;&%R;65T<FEC+FMO9&\N4G5N=&EM95T@4W1A
    M<G1I;F<@2V]D;R!*1$\@=F5R<VEO;B R+C0N," H:V]D;VID;RTR+C0N,"TR
    M,# R,3$R-2TQ.34Q*2!W:71H(&-A<&%B:6QI=&EE<SH@6T5N=&5R<')I<V4@
    M161I=&EO;B!&96%T=7)E<RP@4W1A;F1A<F0@161I=&EO;B!&96%T=7)E<RP@
    M3&ET92!%9&ET:6]N($9E871U<F5S+"!%=F%L=6%T:6]N($QI8V5N<V4L(%%U
    M97)Y($5X=&5N<VEO;G,L($1A=&%C86-H92!0;'5G+6EN+"!3=&%T96UE;G0@
    M0F%T8VAI;F<L($=L;V)A;"!4<F%N<V%C=&EO;G,L($1E=F5L;W!E<B!4;V]L
    M<RP@0W5S=&]M($1A=&%B87-E($1I8W1I;VYA<FEE<RP@16YT97)P<FES92!$
    M871A8F%S97-=#0HR,# R+3$R+3 U(#$S.C4V.C$Q+#0X,B!705).("!;8V]M
    M+G-O;&%R;65T<FEC+FMO9&\N4G5N=&EM95T@5T%23DE.1SH@2V]D;R!*1$\@
    M179A;'5A=&EO;B!E>'!I<F5S(&EN(#$@9&%Y<RX@4&QE87-E(&-O;G1A8W0@
    M<V%L97- <V]L87)M971R:6,N8V]M(&9O<B!I;F9O<FUA=&EO;B!O;B!E>'1E
    M;F1I;F<@>6]U<B!E=F%L=6%T:6]N('!E<FEO9"!O<B!P=7)C:&%S:6YG(&$@
    M;&EC96YS92X-"C(P,#(M,3(M,#4@,3,Z-38Z,3$L-3$R($1%0E5'(%MC;VTN
    M<V]L87)M971R:6,N:V]D;RY2=6YT:6UE72!C;VTN<V]L87)M971R:6,N:V]D
    M;RYI;7!L+FID8F,N964N145097)S:7-T96YC94UA;F%G97)&86-T;W)Y0#%A
    M9C<X8V4Z(&9L=7-H:6YG(&1E9F5R<F5D(')E9VES=')A=&EO;B!O9B R(&-L
    M87-S97,-"C(P,#(M,3(M,#4@,3,Z-38Z,3$L-3,R($1%0E5'(%MC;VTN<V]L
    M87)M971R:6,N:V]D;RY2=6YT:6UE72!C;VTN<V]L87)M971R:6,N:V]D;RYI
    M;7!L+FID8F,N964N145097)S:7-T96YC94UA;F%G97)&86-T;W)Y0#%A9C<X
    M8V4Z(')E9VES=&5R:6YG(#(@8VQA<W-E<SH@6V-L87-S(&YE="YX=')I;2YC
    M<FTN8W5S=&]M97(N;V)J96-T+D-U<W1O;65R+"!C;&%S<R!N970N>'1R:6TN
    M8W)M+F1I8W1I;VYA<GDN;V)J96-T+D-U<G)E;F-Y70T*,C P,BTQ,BTP-2 Q
    M,SHU-CHQ,2PU-C,@1$5"54<@6V-O;2YS;VQA<FUE=')I8RYK;V1O+DUE=&%$
    M871A72!F;W5N9"!*1$\@<F5S;W5R8V4@0W5S=&]M97(N:F1O(&9O<B!N970N
    M>'1R:6TN8W)M+F-U<W1O;65R+F]B:F5C="Y#=7-T;VUE<B!A="!J87(Z9FEL
    M93HO1#HO:F%V82]J8F]S<RTS+C N-"]S97)V97(O<W5P<&]R=&-R;2]T;7 O
    M9&5P;&]Y+W-E<G9E<B]S=7!P;W)T8W)M+V1E<&QO>2]3=7!P;W)T0U)-+F5A
    M<B\V-BY3=7!P;W)T0U)-+F5A<BUC;VYT96YT<R]C<FU%2D)S+FIA<B$O;F5T
    M+WAT<FEM+V-R;2]C=7-T;VUE<B]O8FIE8W0O0W5S=&]M97(N:F1O#0HR,# R
    M+3$R+3 U(#$S.C4V.C$Q+#8P,R!)3D9/("!;8V]M+G-O;&%R;65T<FEC+FMO
    M9&\N365T841A=&%=(&-O;2YS;VQA<FUE=')I8RYK;V1O+FUE=&$N2D1/365T
    M841A=&%087)S97) -F1C9F1E.B!P87)S:6YG('-O=7)C93H@:F%R.F9I;&4Z
    M+T0Z+VIA=F$O:F)O<W,M,RXP+C0O<V5R=F5R+W-U<'!O<G1C<FTO=&UP+V1E
    M<&QO>2]S97)V97(O<W5P<&]R=&-R;2]D97!L;WDO4W5P<&]R=$-232YE87(O
    M-C8N4W5P<&]R=$-232YE87(M8V]N=&5N=',O8W)M14I"<RYJ87(A+VYE="]X
    M=')I;2]C<FTO8W5S=&]M97(O;V)J96-T+T-U<W1O;65R+FID;PT*,C P,BTQ
    M,BTP-2 Q,SHU-CHQ,2PV-C,@1$5"54<@6V-O;2YS;VQA<FUE=')I8RYK;V1O
    M+E)U;G1I;65=(&-O;2YS;VQA<FUE=')I8RYK;V1O+FEM<&PN:F1B8RYE92Y%
    M15!E<G-I<W1E;F-E36%N86=E<D9A8W1O<GE ,6%F-SAC93H@<F5G:7-T97)I
    M;F<Z(&1E9F5R<FEN9R!R96=I<W1R871I;VX@;V8Z(&YE="YX=')I;2YC<FTN
    M9&EC=&EO;F%R>2YO8FIE8W0N3&%N9W5A9V5 ,60P-F0P,@T*,C P,BTQ,BTP
    M-2 Q,SHU-CHQ,2PV-C,@1$5"54<@6V-O;2YS;VQA<FUE=')I8RYK;V1O+E)U
    M;G1I;65=(&-O;2YS;VQA<FUE=')I8RYK;V1O+FEM<&PN:F1B8RYE92Y%15!E
    M<G-I<W1E;F-E36%N86=E<D9A8W1O<GE ,6%F-SAC93H@<F5G:7-T97)#;&%S
    M<SH@(&YE="YX=')I;2YC<FTN9&EC=&EO;F%R>2YO8FIE8W0N3&%N9W5A9V5
    M,60P-F0P,CT^9F%L<V4-"C(P,#(M,3(M,#4@,3,Z-38Z,3$L-C<S($1%0E5'
    M(%MC;VTN<V]L87)M971R:6,N:V]D;RY2=6YT:6UE72!C;VTN<V]L87)M971R
    M:6,N:V]D;RYI;7!L+FID8F,N964N145097)S:7-T96YC94UA;F%G97)&86-T
    M;W)Y0#%A9C<X8V4Z(')E9VES=&5R:6YG.B!D969E<G)I;F<@<F5G:7-T<F%T
    M:6]N(&]F.B!N970N>'1R:6TN8W)M+F-U<W1O;65R+F]B:F5C="Y.871U<F5
    M,6(V.34V9@T*,C P,BTQ,BTP-2 Q,SHU-CHQ,2PV-S,@1$5"54<@6V-O;2YS
    M;VQA<FUE=')I8RYK;V1O+E)U;G1I;65=(&-O;2YS;VQA<FUE=')I8RYK;V1O
    M+FEM<&PN:F1B8RYE92Y%15!E<G-I<W1E;F-E36%N86=E<D9A8W1O<GE ,6%F
    M-SAC93H@<F5G:7-T97)#;&%S<SH@(&YE="YX=')I;2YC<FTN8W5S=&]M97(N
    M;V)J96-T+DYA='5R94 Q8C8Y-39F/3YF86QS90T*,C P,BTQ,BTP-2 Q,SHU
    M-CHQ,2PV-S,@1$5"54<@6V-O;2YS;VQA<FUE=')I8RYK;V1O+E)U;G1I;65=
    M(&-O;2YS;VQA<FUE=')I8RYK;V1O+FEM<&PN:F1B8RYE92Y%15!E<G-I<W1E
    M;F-E36%N86=E<D9A8W1O<GE ,6%F-SAC93H@<F5G:7-T97)I;F<Z(&1E9F5R
    M<FEN9R!R96=I<W1R871I;VX@;V8Z(&YE="YX=')I;2YC<FTN8W5S=&]M97(N
    M;V)J96-T+D-O;G1A8W1);F9O0&-C,V4X#0HR,# R+3$R+3 U(#$S.C4V.C$Q
    M+#8W,R!$14)51R!;8V]M+G-O;&%R;65T<FEC+FMO9&\N4G5N=&EM95T@8V]M
    M+G-O;&%R;65T<FEC+FMO9&\N:6UP;"YJ9&)C+F5E+D5%4&5R<VES=&5N8V5-
    M86YA9V5R1F%C=&]R>4 Q868W.&-E.B!R96=I<W1E<D-L87-S.B @;F5T+GAT
    M<FEM+F-R;2YC=7-T;VUE<BYO8FIE8W0N0V]N=&%C=$EN9F] 8V,S93@]/F9A
    M;'-E#0HR,# R+3$R+3 U(#$S.C4V.C$Q+#8X,R!$14)51R!;8V]M+G-O;&%R
    M;65T<FEC+FMO9&\N4G5N=&EM95T@8V]M+G-O;&%R;65T<FEC+FMO9&\N:6UP
    M;"YJ9&)C+F5E+D5%4&5R<VES=&5N8V5-86YA9V5R1F%C=&]R>4 Q868W.&-E
    M.B!R96=I<W1E<FEN9SH@9&5F97)R:6YG(')E9VES=')A=&EO;B!O9CH@;F5T
    M+GAT<FEM+F-R;2YC=7-T;VUE<BYO8FIE8W0N0V]N=')A8W14>7!E0#$S9&,T
    M9#4-"C(P,#(M,3(M,#4@,3,Z-38Z,3$L-C@S($1%0E5'(%MC;VTN<V]L87)M
    M971R:6,N:V]D;RY2=6YT:6UE72!C;VTN<V]L87)M971R:6,N:V]D;RYI;7!L
    M+FID8F,N964N145097)S:7-T96YC94UA;F%G97)&86-T;W)Y0#%A9C<X8V4Z
    M(')E9VES=&5R0VQA<W,Z("!N970N>'1R:6TN8W)M+F-U<W1O;65R+F]B:F5C
    M="Y#;VYT<F%C=%1Y<&5 ,3-D8S1D-3T^9F%L<V4-"C(P,#(M,3(M,#4@,3,Z
    M-38Z,3$L-C@S($1%0E5'(%MC;VTN<V]L87)M971R:6,N:V]D;RY2=6YT:6UE
    M72!C;VTN<V]L87)M971R:6,N:V]D;RYI;7!L+FID8F,N964N145097)S:7-T
    M96YC94UA;F%G97)&86-T;W)Y0#%A9C<X8V4Z(')E9VES=&5R:6YG.B!D969E
    M<G)I;F<@<F5G:7-T<F%T:6]N(&]F.B!N970N>'1R:6TN8W)M+F-U<W1O;65R
    M+F]B:F5C="Y#;VYT<F%C=$ T-3@Y96(-"C(P,#(M,3(M,#4@,3,Z-38Z,3$L
    M-C@S($1%0E5'(%MC;VTN<V]L87)M971R:6,N:V]D;RY2=6YT:6UE72!C;VTN
    M<V]L87)M971R:6,N:V]D;RYI;7!L+FID8F,N964N145097)S:7-T96YC94UA
    M;F%G97)&86-T;W)Y0#%A9C<X8V4Z(')E9VES=&5R0VQA<W,Z("!N970N>'1R
    M:6TN8W)M+F-U<W1O;65R+F]B:F5C="Y#;VYT<F%C=$ T-3@Y96(]/F9A;'-E
    M#0HR,# R+3$R+3 U(#$S.C4V.C$Q+#8X,R!$14)51R!;8V]M+G-O;&%R;65T
    M<FEC+FMO9&\N4G5N=&EM95T@8V]M+G-O;&%R;65T<FEC+FMO9&\N:6UP;"YJ
    M9&)C+F5E+D5%4&5R<VES=&5N8V5-86YA9V5R1F%C=&]R>4 Q868W.&-E.B!R
    M96=I<W1E<FEN9SH@9&5F97)R:6YG(')E9VES=')A=&EO;B!O9CH@;F5T+GAT
    M<FEM+F-R;2YC=7-T;VUE<BYO8FIE8W0N0W5S=&]M97)0:&]N94 W,S5F-#4-
    M"C(P,#(M,3(M,#4@,3,Z-38Z,3$L-C@S($1%0E5'(%MC;VTN<V]L87)M971R
    M:6,N:V]D;RY2=6YT:6UE72!C;VTN<V]L87)M971R:6,N:V]D;RYI;7!L+FID
    M8F,N964N145097)S:7-T96YC94UA;F%G97)&86-T;W)Y0#%A9C<X8V4Z(')E
    M9VES=&5R0VQA<W,Z("!N970N>'1R:6TN8W)M+F-U<W1O;65R+F]B:F5C="Y#
    M=7-T;VUE<E!H;VYE0#<S-68T-3T^9F%L<V4-"C(P,#(M,3(M,#4@,3,Z-38Z
    M,3$L-C@S($1%0E5'(%MC;VTN<V]L87)M971R:6,N:V]D;RY-971A1&%T85T@
    M<&%R<V5D(&IA<CIF:6QE.B]$.B]J879A+VIB;W-S+3,N,"XT+W-E<G9E<B]S
    M=7!P;W)T8W)M+W1M<"]D97!L;WDO<V5R=F5R+W-U<'!O<G1C<FTO9&5P;&]Y
    M+U-U<'!O<G1#4DTN96%R+S8V+E-U<'!O<G1#4DTN96%R+6-O;G1E;G1S+V-R
    M;45*0G,N:F%R(2]N970O>'1R:6TO8W)M+V-U<W1O;65R+V]B:F5C="]#=7-T
    M;VUE<BYJ9&\Z(%MC;VTN<V]L87)M971R:6,N:V]D;RYM971A+D-L87-S365T
    M841A=&% -S-C8S$Q6SMT>7!E/6-L87-S(&YE="YX=')I;2YC<FTN8W5S=&]M
    M97(N;V)J96-T+D-U<W1O;65R.VQO861E<CUO<F<N:F)O<W,N;7@N;&]A9&EN
    M9RY5;FEF:65D0VQA<W-,;V%D97(S0&-A8C@U-'L@=7)L/69I;&4Z+T0Z+VIA
    M=F$O:F)O<W,M,RXP+C0O<V5R=F5R+W-U<'!O<G1C<FTO=&UP+V1E<&QO>2]S
    M97)V97(O<W5P<&]R=&-R;2]D97!L;WDO4W5P<&]R=$-232YE87(O-C8N4W5P
    M<&]R=$-232YE87(M8V]N=&5N=',O8W)M14I"<RYJ87(@?3MF:6YI<VAE9#UF
    M86QS93ME;FAA;F-E9#UT<G5E75T-"C(P,#(M,3(M,#4@,3,Z-38Z,3$L-C@S
    M($1%0E5'(%MC;VTN<V]L87)M971R:6,N:V]D;RY-971A1&%T85T@<&%R<V5D
    M(&UE=&%D871A.B!T>7!E/6-L87-S(&YE="YX=')I;2YC<FTN8W5S=&]M97(N
    M;V)J96-T+D-U<W1O;65R0#(W,V8T93MV86QI9&%T93UF86QS93H@6V-O;2YS
    M;VQA<FUE=')I8RYK;V1O+FUE=&$N0VQA<W--971A1&%T84 W,V-C,3%;.W1Y
    M<&4]8VQA<W,@;F5T+GAT<FEM+F-R;2YC=7-T;VUE<BYO8FIE8W0N0W5S=&]M
    M97([;&]A9&5R/6]R9RYJ8F]S<RYM>"YL;V%D:6YG+E5N:69I961#;&%S<TQO
    M861E<C- 8V%B.#4T>R!U<FP]9FEL93HO1#HO:F%V82]J8F]S<RTS+C N-"]S
    M97)V97(O<W5P<&]R=&-R;2]T;7 O9&5P;&]Y+W-E<G9E<B]S=7!P;W)T8W)M
    M+V1E<&QO>2]3=7!P;W)T0U)-F5A<B\V-BY3=7!P;W)T0U)-F5A<BUC;VYT
    M96YT<R]C<FU%2D)S+FIA<B!].V9I;FES:&5D/69A;'-E.V5N:&%N8V5D/71R
    M=65=70T*,C P,BTQ,BTP-2 Q,SHU-CHQ,2PV.#,@1$5"54<@6V-O;2YS;VQA
    M<FUE=')I8RYK;V1O+DUE=&%$871A72!C86-H960@;65T861A=&$Z('1Y<&4]
    M;F5T+GAT<FEM+F-R;2YC=7-T;VUE<BYO8FIE8W0N0W5S=&]M97) ,C<S9C1E
    M.VQO861E<CUC;VTN<V]L87)M971R:6,N:V]D;RYU=&EL+DUU;'1I3&]A9&5R
    M0VQA<W-297-O;'9E<D!C86(X-S,@;&]A9&5R<SH@6V]R9RYJ8F]S<RYM>"YL
    M;V%D:6YG+E5N:69I961#;&%S<TQO861E<C- 8V%B.#4T>R!U<FP]9FEL93HO
    M1#HO:F%V82]J8F]S<RTS+C N-"]S97)V97(O<W5P<&]R=&-R;2]T;7 O9&5P
    M;&]Y+W-E<G9E<B]S=7!P;W)T8W)M+V1E<&QO>2]3=7!P;W)T0U)-+F5A<B\V
    M-BY3=7!P;W)T0U)-+F5A<BUC;VYT96YT<R]C<FU%2D)S+FIA<B!]73L@=&AR
    M96%D)W,@8V]N=&5X="!C;&%S<R!L;V%D97(Z(&IA=F$N;F5T+E523$-L87-S
    M3&]A9&5R0#-C.3,Q-#MV86QI9&%T93UF86QS93H@8V]M+G-O;&%R;65T<FEC
    M+FMO9&\N;65T82Y#;&%S<TUE=&%$871A0#<S8V,Q,5L[='EP93UC;&%S<R!N
    M970N>'1R:6TN8W)M+F-U<W1O;65R+F]B:F5C="Y#=7-T;VUE<CML;V%D97(]
    M;W)G+FIB;W-S+FUX+FQO861I;F<N56YI9FEE9$-L87-S3&]A9&5R,T!C86(X
    M-31[('5R;#UF:6QE.B]$.B]J879A+VIB;W-S+3,N,"XT+W-E<G9E<B]S=7!P
    M;W)T8W)M+W1M<"]D97!L;WDO<V5R=F5R+W-U<'!O<G1C<FTO9&5P;&]Y+U-U
    M<'!O<G1#4DTN96%R+S8V+E-U<'!O<G1#4DTN96%R+6-O;G1E;G1S+V-R;45*
    M0G,N:F%R('T[9FEN:7-H960]9F%L<V4[96YH86YC960]=')U95T-"C(P,#(M
    M,3(M,#4@,3,Z-38Z,3$L-CDS($1%0E5'(%MC;VTN<V]L87)M971R:6,N:V]D
    M;RY-971A1&%T85T@9F]U;F0@2D1/(')E<V]U<F-E($-U<G)E;F-Y+FID;R!F
    M;W(@;F5T+GAT<FEM+F-R;2YD:6-T:6]N87)Y+F]B:F5C="Y#=7)R96YC>2!A
    M="!J87(Z9FEL93HO1#HO:F%V82]J8F]S<RTS+C N-"]S97)V97(O<W5P<&]R
    M=&-R;2]T;7 O9&5P;&]Y+W-E<G9E<B]S=7!P;W)T8W)M+V1E<&QO>2]3=7!P
    M;W)T0U)-+F5A<B\V-BY3=7!P;W)T0U)-+F5A<BUC;VYT96YT<R]C<FU%2D)S
    M+FIA<B$O;F5T+WAT<FEM+V-R;2]D:6-T:6]N87)Y+V]B:F5C="]#=7)R96YC
    M>2YJ9&\-"C(P,#(M,3(M,#4@,3,Z-38Z,3$L-CDS($E.1D\@(%MC;VTN<V]L
    M87)M971R:6,N:V]D;RY-971A1&%T85T@8V]M+G-O;&%R;65T<FEC+FMO9&\N
    M;65T82Y*1$]-971A1&%T85!A<G-E<D U83EC-F4Z('!A<G-I;F<@<V]U<F-E
    M.B!J87(Z9FEL93HO1#HO:F%V82]J8F]S<RTS+C N-"]S97)V97(O<W5P<&]R
    M=&-R;2]T;7 O9&5P;&]Y+W-E<G9E<B]S=7!P;W)T8W)M+V1E<&QO>2]3=7!P
    M;W)T0U)-F5A<B\V-BY3=7!P;W)T0U)-F5A<BUC;VYT96YT<R]C<FU%2D)S
    M+FIA<B$O;F5T+WAT<FEM+V-R;2]D:6-T:6]N87)Y+V]B:F5C="]#=7)R96YC
    M>2YJ9&\-"C(P,#(M,3(M,#4@,3,Z-38Z,3$L-S S($1%0E5'(%MC;VTN<V]L
    M87)M971R:6,N:V]D;RY-971A1&%T85T@<&%R<V5D(&IA<CIF:6QE.B]$.B]J
    M879A+VIB;W-S+3,N,"XT+W-E<G9E<B]S=7!P;W)T8W)M+W1M<"]D97!L;WDO
    M<V5R=F5R+W-U<'!O<G1C<FTO9&5P;&]Y+U-U<'!O<G1#4DTN96%R+S8V+E-U
    M<'!O<G1#4DTN96%R+6-O;G1E;G1S+V-R;45*0G,N:F%R(2]N970O>'1R:6TO
    M8W)M+V1I8W1I;VYA<GDO;V)J96-T+T-U<G)E;F-Y+FID;SH@6V-O;2YS;VQA
    M<FUE=')I8RYK;V1O+FUE=&$N0VQA<W--971A1&%T84!B9#1D8S);.W1Y<&4]
    M8VQA<W,@;F5T+GAT<FEM+F-R;2YD:6-T:6]N87)Y+F]B:F5C="Y#=7)R96YC
    M>3ML;V%D97(];W)G+FIB;W-S+FUX+FQO861I;F<N56YI9FEE9$-L87-S3&]A
    M9&5R,T!C86(X-31[('5R;#UF:6QE.B]$.B]J879A+VIB;W-S+3,N,"XT+W-E
    M<G9E<B]S=7!P;W)T8W)M+W1M<"]D97!L;WDO<V5R=F5R+W-U<'!O<G1C<FTO
    M9&5P;&]Y+U-U<'!O<G1#4DTN96%R+S8V+E-U<'!O<G1#4DTN96%R+6-O;G1E
    M;G1S+V-R;45*0G,N:F%R('T[9FEN:7-H960]9F%L<V4[96YH86YC960]=')U
    M95U=#0HR,# R+3$R+3 U(#$S.C4V.C$Q+#<P,R!$14)51R!;8V]M+G-O;&%R
    M;65T<FEC+FMO9&\N365T841A=&%=('!A<G-E9"!M971A9&%T83H@='EP93UC
    M;&%S<R!N970N>'1R:6TN8W)M+F1I8W1I;VYA<GDN;V)J96-T+D-U<G)E;F-Y
    M0#0S,34S8SMV86QI9&%T93UF86QS93H@6V-O;2YS;VQA<FUE=')I8RYK;V1O
    M+FUE=&$N0VQA<W--971A1&%T84!B9#1D8S);.W1Y<&4]8VQA<W,@;F5T+GAT
    M<FEM+F-R;2YD:6-T:6]N87)Y+F]B:F5C="Y#=7)R96YC>3ML;V%D97(];W)G
    M+FIB;W-S+FUX+FQO861I;F<N56YI9FEE9$-L87-S3&]A9&5R,T!C86(X-31[
    M('5R;#UF:6QE.B]$.B]J879A+VIB;W-S+3,N,"XT+W-E<G9E<B]S=7!P;W)T
    M8W)M+W1M<"]D97!L;WDO<V5R=F5R+W-U<'!O<G1C<FTO9&5P;&]Y+U-U<'!O
    M<G1#4DTN96%R+S8V+E-U<'!O<G1#4DTN96%R+6-O;G1E;G1S+V-R;45*0G,N
    M:F%R('T[9FEN:7-H960]9F%L<V4[96YH86YC960]=')U95U=#0HR,# R+3$R
    M+3 U(#$S.C4V.C$Q+#<P,R!$14)51R!;8V]M+G-O;&%R;65T<FEC+FMO9&\N
    M365T841A=&%=(&-A8VAE9"!M971A9&%T83H@='EP93UN970N>'1R:6TN8W)M
    M+F1I8W1I;VYA<GDN;V)J96-T+D-U<G)E;F-Y0#0S,34S8SML;V%D97(]8V]M
    M+G-O;&%R;65T<FEC+FMO9&\N=71I;"Y-=6QT:4QO861E<D-L87-S4F5S;VQV
    M97) 8V%B.#<S(&QO861E<G,Z(%MO<F<N:F)O<W,N;7@N;&]A9&EN9RY5;FEF
    M:65D0VQA<W-,;V%D97(S0&-A8C@U-'L@=7)L/69I;&4Z+T0Z+VIA=F$O:F)O
    M<W,M,RXP+C0O<V5R=F5R+W-U<'!O<G1C<FTO=&UP+V1E<&QO>2]S97)V97(O
    M<W5P<&]R=&-R;2]D97!L;WDO4W5P<&]R=$-232YE87(O-C8N4W5P<&]R=$-2
    M32YE87(M8V]N=&5N=',O8W)M14I"<RYJ87(@?5T[('1H<F5A9"=S(&-O;G1E
    M>'0@8VQA<W,@;&]A9&5R.B!J879A+FYE="Y54DQ#;&%S<TQO861E<D S8SDS
    M,30[=F%L:61A=&4]9F%L<V4Z(&-O;2YS;VQA<FUE=')I8RYK;V1O+FUE=&$N
    M0VQA<W--971A1&%T84!B9#1D8S);.W1Y<&4]8VQA<W,@;F5T+GAT<FEM+F-R
    M;2YD:6-T:6]N87)Y+F]B:F5C="Y#=7)R96YC>3ML;V%D97(];W)G+FIB;W-S
    M+FUX+FQO861I;F<N56YI9FEE9$-L87-S3&]A9&5R,T!C86(X-31[('5R;#UF
    M:6QE.B]$.B]J879A+VIB;W-S+3,N,"XT+W-E<G9E<B]S=7!P;W)T8W)M+W1M
    M<"]D97!L;WDO<V5R=F5R+W-U<'!O<G1C<FTO9&5P;&]Y+U-U<'!O<G1#4DTN
    M96%R+S8V+E-U<'!O<G1#4DTN96%R+6-O;G1E;G1S+V-R;45*0G,N:F%R('T[
    M9FEN:7-H960]9F%L<V4[96YH86YC960]=')U95T-"C(P,#(M,3(M,#4@,3,Z
    M-38Z,3$L-S$S($1%0E5'(%MC;VTN<V]L87)M971R:6,N:V]D;RY-971A1&%T
    M85T@8W)E871E9"!M971A9&%T83H@='EP93UN970N>'1R:6TN8W)M+F1I8W1I
    M;VYA<GDN;V)J96-T+D-U<G)E;F-Y0#0S,34S8SML;V%D97(]8V]M+G-O;&%R
    M;65T<FEC+FMO9&\N=71I;"Y-=6QT:4QO861E<D-L87-S4F5S;VQV97) 8V%B
    M.#<S(&QO861E<G,Z(%MO<F<N:F)O<W,N;7@N;&]A9&EN9RY5;FEF:65D0VQA
    M<W-,;V%D97(S0&-A8C@U-'L@=7)L/69I;&4Z+T0Z+VIA=F$O:F)O<W,M,RXP
    M+C0O<V5R=F5R+W-U<'!O<G1C<FTO=&UP+V1E<&QO>2]S97)V97(O<W5P<&]R
    M=&-R;2]D97!L;WDO4W5P<&]R=$-232YE87(O-C8N4W5P<&]R=$-232YE87(M
    M8V]N=&5N=',O8W)M14I"<RYJ87(@?5T[('1H<F5A9"=S(&-O;G1E>'0@8VQA
    M<W,@;&]A9&5R.B!J879A+FYE="Y54DQ#;&%S<TQO861E<D S8SDS,30[=F%L
    M:61A=&4]9F%L<V4Z(&-O;2YS;VQA<FUE=')I8RYK;V1O+FUE=&$N0VQA<W--
    M971A1&%T84!B9#1D8S);.W1Y<&4]8VQA<W,@;F5T+GAT<FEM+F-R;2YD:6-T
    M:6]N87)Y+F]B:F5C="Y#=7)R96YC>3ML;V%D97(];W)G+FIB;W-S+FUX+FQO
    M861I;F<N56YI9FEE9$-L87-S3&]A9&5R,T!C86(X-31[('5R;#UF:6QE.B]$
    M.B]J879A+VIB;W-S+3,N,"XT+W-E<G9E<B]S=7!P;W)T8W)M+W1M<"]D97!L
    M;WDO<V5R=F5R+W-U<'!O<G1C<FTO9&5P;&]Y+U-U<'!O<G1#4DTN96%R+S8V
    M+E-U<'!O<G1#4DTN96%R+6-O;G1E;G1S+V-R;45*0G,N:F%R('T[9FEN:7-H
    M960]=')U93ME;FAA;F-E9#UT<G5E70T*,C P,BTQ,BTP-2 Q,SHU-CHQ,2PW
    M,C,@1$5"54<@6V-O;2YS;VQA<FUE=')I8RYK;V1O+DUE=&%$871A72!F;W5N
    M9"!*1$\@<F5S;W5R8V4@0V]N=&%C=$EN9F\N:F1O(&9O<B!N970N>'1R:6TN
    M8W)M+F-U<W1O;65R+F]B:F5C="Y#;VYT86-T26YF;R!A="!J87(Z9FEL93HO
    M1#HO:F%V82]J8F]S<RTS+C N-"]S97)V97(O<W5P<&]R=&-R;2]T;7 O9&5P
    M;&]Y+W-E<G9E<B]S=7!P;W)T8W)M+V1E<&QO>2]3=7!P;W)T0U)-+F5A<B\V
    M-BY3=7!P;W)T0U)-+F5A<BUC;VYT96YT<R]C<FU%2D)S+FIA<B$O;F5T+WAT
    M<FEM+V-R;2]C=7-T;VUE<B]O8FIE8W0O0V]N=&%C=$EN9F\N:F1O#0HR,# R
    M+3$R+3 U(#$S.C4V.C$Q+#<R,R!)3D9/("!;8V]M+G-O;&%R;65T<FEC+FMO
    M9&\N365T841A=&%=(&-O;2YS;VQA<FUE=')I8RYK;V1O+FUE=&$N2D1/365T
    M841A=&%087)S97) ,3DQ9&0Q9#H@<&%R<VEN9R!S;W5R8V4Z(&IA<CIF:6QE
    M.B]$.B]J879A+VIB;W-S+3,N,"XT+W-E<G9E<B]S=7!P;W)T8W)M+W1M<"]D
    M97!L;WDO<V5R=F5R+W-U<'!O<G1C<FTO9&5P;&]Y+U-U<'!O<G1#4DTN96%R
    M+S8V+E-U<'!O<G1#4DTN96%R+6-O;G1E;G1S+V-R;45*0G,N:F%R(2]N970O
    M>'1R:6TO8W)M+V-U<W1O;65R+V]B:F5C="]#;VYT86-T26YF;RYJ9&\-"C(P
    M,#(M,3(M,#4@,3,Z-38Z,3$L-S,S($1%0E5'(%MC;VTN<V]L87)M971R:6,N
    M:V]D;RY-971A1&%T85T@<&%R<V5D(&IA<CIF:6QE.B]$.B]J879A+VIB;W-S
    M+3,N,"XT+W-E<G9E<B]S=7!P;W)T8W)M+W1M<"]D97!L;WDO<V5R=F5R+W-U
    M<'!O<G1C<FTO9&5P;&]Y+U-U<'!O<G1#4DTN96%R+S8V+E-U<'!O<G1#4DTN
    M96%R+6-O;G1E;G1S+V-R;45*0G,N:F%R(2]N970O>'1R:6TO8W)M+V-U<W1O
    M;65R+V]B:F5C="]#;VYT86-T26YF;RYJ9&\Z(%MC;VTN<V]L87)M971R:6,N
    M:V]D;RYM971A+D-L87-S365T841A=&% 9C8Y,&4T6SMT>7!E/6-L87-S(&YE
    M="YX=')I;2YC<FTN8W5S=&]M97(N;V)J96-T+D-O;G1A8W1);F9O.VQO861E
    M<CUO<F<N:F)O<W,N;7@N;&]A9&EN9RY5;FEF:65D0VQA<W-,;V%D97(S0&-A
    M8C@U-'L@=7)L/69I;&4Z+T0Z+VIA=F$O:F)O<W,M,RXP+C0O<V5R=F5R+W-U
    M<'!O<G1C<FTO=&UP+V1E<&QO>2]S97)V97(O<W5P<&]R=&-R;2]D97!L;WDO
    M4W5P<&]R=$-232YE87(O-C8N4W5P<&]R=$-232YE87(M8V]N=&5N=',O8W)M
    M14I"<RYJ87(@?3MF:6YI<VAE9#UF86QS93ME;FAA;F-E9#UT<G5E75T-"C(P
    M,#(M,3(M,#4@,3,Z-38Z,3$L-S,S($1%0E5'(%MC;VTN<V]L87)M971R:6,N
    M:V]D;RY-971A1&%T85T@<&%R<V5D(&UE=&%D871A.B!T>7!E/6-L87-S(&YE
    M="YX=')I;2YC<FTN8W5S=&]M97(N;V)J96-T+D-O;G1A8W1);F9O0&-C,V4X
    M.W9A;&ED871E/69A;'-E.B!;8V]M+G-O;&%R;65T<FEC+FMO9&\N;65T82Y#
    M;&%S<TUE=&%$871A0&8V.3!E-%L[='EP93UC;&%S<R!N970N>'1R:6TN8W)M
    M+F-U<W1O;65R+F]B:F5C="Y#;VYT86-T26YF;SML;V%D97(];W)G+FIB;W-S
    M+FUX+FQO861I;F<N56YI9FEE9$-L87-S3&]A9&5R,T!C86(X-31[('5R;#UF
    M:6QE.B]$.B]J879A+VIB;W-S+3,N,"XT+W-E<G9E<B]S=7!P;W)T8W)M+W1M
    M<"]D97!L;WDO<V5R=F5R+W-U<'!O<G1C<FTO9&5P;&]Y+U-U<'!O<G1#4DTN
    M96%R+S8V+E-U<'!O<G1#4DTN96%R+6-O;G1E;G1S+V-R;45*0G,N:F%R('T[
    M9FEN:7-H960]9F%L<V4[96YH86YC960]=')U95U=#0HR,# R+3$R+3 U(#$S
    M.C4V.C$Q+#<S,R!$14)51R!;8V]M+G-O;&%R;65T<FEC+FMO9&\N365T841A
    M=&%=(&-A8VAE9"!M971A9&%T83H@='EP93UN970N>'1R:6TN8W)M+F-U<W1O
    M;65R+F]B:F5C="Y#;VYT86-T26YF;T!C8S-E.#ML;V%D97(]8V]M+G-O;&%R
    M;65T<FEC+FMO9&\N=71I;"Y-=6QT:4QO861E<D-L87-S4F5S;VQV97) 8V%B
    M.#<S(&QO861E<G,Z(%MO<F<N:F)O<W,N;7@N;&]A9&EN9RY5;FEF:65D0VQA
    M<W-,;V%D97(S0&-A8C@U-'L@=7)L/69I;&4Z+T0Z+VIA=F$O:F)O<W,M,RXP
    M+C0O<V5R=F5R+W-U<'!O<G1C<FTO=&UP+V1E<&QO>2]S97)V97(O<W5P<&]R
    M=&-R;2]D97!L;WDO4W5P<&]R=$-232YE87(O-C8N4W5P<&]R=$-232YE87(M
    M8V]N=&5N=',O8W)M14I"<RYJ87(@?5T[('1H<F5A9"=S(&-O;G1E>'0@8VQA
    M<W,@;&]A9&5R.B!J879A+FYE="Y54DQ#;&%S<TQO861E<D S8SDS,30[=F%L
    M:61A=&4]9F%L<V4Z(&-O;2YS;VQA<FUE=')I8RYK;V1O+FUE=&$N0VQA<W--
    M971A1&%T84!F-CDP931;.W1Y<&4]8VQA<W,@;F5T+GAT<FEM+F-R;2YC=7-T
    M;VUE<BYO8FIE8W0N0V]N=&%C=$EN9F\[;&]A9&5R/6]R9RYJ8F]S<RYM>"YL
    M;V%D:6YG+E5N:69I961#;&%S<TQO861E<C- 8V%B.#4T>R!U<FP]9FEL93HO
    M1#HO:F%V82]J8F]S<RTS+C N-"]S97)V97(O<W5P<&]R=&-R;2]T;7 O9&5P
    M;&]Y+W-E<G9E<B]S=7!P;W)T8W)M+V1E<&QO>2]3=7!P;W)T0U)-+F5A<B\V
    M-BY3=7!P;W)T0U)-+F5A<BUC;VYT96YT<R]C<FU%2D)S+FIA<B!].V9I;FES
    M:&5D/69A;'-E.V5N:&%N8V5D/71R=65=#0HR,# R+3$R+3 U(#$S.C4V.C$Q
    M+#<S,R!$14)51R!;8V]M+G-O;&%R;65T<FEC+FMO9&\N365T841A=&%=(&9O
    M=6YD($I$3R!R97-O=7)C92!,86YG=6%G92YJ9&\@9F]R(&YE="YX=')I;2YC
    M<FTN9&EC=&EO;F%R>2YO8FIE8W0N3&%N9W5A9V4@870@:F%R.F9I;&4Z+T0Z
    M+VIA=F$O:F)O<W,M,RXP+C0O<V5R=F5R+W-U<'!O<G1C<FTO=&UP+V1E<&QO
    M>2]S97)V97(O<W5P<&]R=&-R;2]D97!L;WDO4W5P<&]R=$-232YE87(O-C8N
    M4W5P<&]R=$-232YE87(M8V]N=&5N=',O8W)M14I"<RYJ87(A+VYE="]X=')I
    M;2]C<FTO9&EC=&EO;F%R>2]O8FIE8W0O3&%N9W5A9V4N:F1O#0HR,# R+3$R
    M+3 U(#$S.C4V.C$Q+#<S,R!)3D9/("!;8V]M+G-O;&%R;65T<FEC+FMO9&\N
    M365T841A=&%=(&-O;2YS;VQA<FUE=')I8RYK;V1O+FUE=&$N2D1/365T841A
    M=&%087)S97) ,6$R.30U,#H@<&%R<VEN9R!S;W5R8V4Z(&IA<CIF:6QE.B]$
    M.B]J879A+VIB;W-S+3,N,"XT+W-E<G9E<B]S=7!P;W)T8W)M+W1M<"]D97!L
    M;WDO<V5R=F5R+W-U<'!O<G1C<FTO9&5P;&]Y+U-U<'!O<G1#4DTN96%R+S8V
    M+E-U<'!O<G1#4DTN96%R+6-O;G1E;G1S+V-R;45*0G,N:F%R(2]N970O>'1R
    M:6TO8W)M+V1I8W1I;VYA<GDO;V)J96-T+TQA;F=U86=E+FID;PT*,C P,BTQ
    M,BTP-2 Q,SHU-CHQ,2PW-#,@1$5"54<@6V-O;2YS;VQA<FUE=')I8RYK;V1O
    M+DUE=&%$871A72!P87)S960@:F%R.F9I;&4Z+T0Z+VIA=F$O:F)O<W,M,RXP
    M+C0O<V5R=F5R+W-U<'!O<G1C<FTO=&UP+V1E<&QO>2]S97)V97(O<W5P<&]R
    M=&-R;2]D97!L;WDO4W5P<&]R=$-232YE87(O-C8N4W5P<&]R=$-232YE87(M
    M8V]N=&5N=',O8W)M14I"<RYJ87(A+VYE="]X=')I;2]C<FTO9&EC=&EO;F%R
    M>2]O8FIE8W0O3&%N9W5A9V4N:F1O.B!;8V]M+G-O;&%R;65T<FEC+FMO9&\N
    M;65T82Y#;&%S<TUE=&%$871A0#$X.&0Y,F5;.W1Y<&4]8VQA<W,@;F5T+GAT
    M<FEM+F-R;2YD:6-T:6]N87)Y+F]B:F5C="Y,86YG=6%G93ML;V%D97(];W)G
    M+FIB;W-S+FUX+FQO861I;F<N56YI9FEE9$-L87-S3&]A9&5R,T!C86(X-31[
    M('5R;#UF:6QE.B]$.B]J879A+VIB;W-S+3,N,"XT+W-E<G9E<B]S=7!P;W)T
    M8W)M+W1M<"]D97!L;WDO<V5R=F5R+W-U<'!O<G1C<FTO9&5P;&]Y+U-U<'!O
    M<G1#4DTN96%R+S8V+E-U<'!O<G1#4DTN96%R+6-O;G1E;G1S+V-R;45*0G,N
    M:F%R('T[9FEN:7-H960]9F%L<V4[96YH86YC960]=')U95U=#0HR,# R+3$R
    M+3 U(#$S.C4V.C$Q+#<T,R!$14)51R!;8V]M+G-O;&%R;65T<FEC+FMO9&\N
    M365T841A=&%=('!A<G-E9"!M971A9&%T83H@='EP93UC;&%S<R!N970N>'1R
    M:6TN8W)M+F1I8W1I;VYA<GDN;V)J96-T+DQA;F=U86=E0#%D,#9D,#([=F%L
    M:61A=&4]9F%L<V4Z(%MC;VTN<V]L87)M971R:6,N:V]D;RYM971A+D-L87-S
    M365T841A=&% ,3@X9#DR95L[='EP93UC;&%S<R!N970N>'1R:6TN8W)M+F1I
    M8W1I;VYA<GDN;V)J96-T+DQA;F=U86=E.VQO861E<CUO<F<N:F)O<W,N;7@N
    M;&]A9&EN9RY5;FEF:65D0VQA<W-,;V%D97(S0&-A8C@U-'L@=7)L/69I;&4Z
    M+T0Z+VIA=F$O:F)O<W,M,RXP+C0O<V5R=F5R+W-U<'!O<G1C<FTO=&UP+V1E
    M<&QO>2]S97)V97(O<W5P<&]R=&-R;2]D97!L;WDO4W5P<&]R=$-232YE87(O
    M-C8N4W5P<&]R=$-232YE87(M8V]N=&5N=',O8W)M14I"<RYJ87(@?3MF:6YI
    M<VAE9#UF86QS93ME;FAA;F-E9#UT<G5E75T-"C(P,#(M,3(M,#4@,3,Z-38Z
    M,3$L-S0S($1%0E5'(%MC;VTN<V]L87)M971R:6,N:V]D;RY-971A1&%T85T@
    M8V%C:&5D(&UE=&%D871A.B!T>7!E/6YE="YX=')I;2YC<FTN9&EC=&EO;F%R
    M>2YO8FIE8W0N3&%N9W5A9V5 ,60P-F0P,CML;V%D97(]8V]M+G-O;&%R;65T
    M<FEC+FMO9&\N=71I;"Y-=6QT:4QO861E<D-L87-S4F5S;VQV97) 8V%B.#<S
    M(&QO861E<G,Z(%MO<F<N:F)O<W,N;7@N;&]A9&EN9RY5;FEF:65D0VQA<W-,
    M;V%D97(S0&-A8C@U-'L@=7)L/69I;&4Z+T0Z+VIA=F$O:F)O<W,M,RXP+C0O
    M<V5R=F5R+W-U<'!O<G1C<FTO=&UP+V1E<&QO>2]S97)V97(O<W5P<&]R=&-R
    M;2]D97!L;WDO4W5P<&]R=$-232YE87(O-C8N4W5P<&]R=$-232YE87(M8V]N
    M=&5N=',O8W)M14I"<RYJ87(@?5T[('1H<F5A9"=S(&-O;G1E>'0@8VQA<W,@
    M;&]A9&5R.B!J879A+FYE="Y54DQ#;&%S<TQO861E<D S8SDS,30[=F%L:61A
    M=&4]9F%L<V4Z(&-O;2YS;VQA<FUE=')I8RYK;V1O+FUE=&$N0VQA<W--971A
    M1&%T84 Q.#AD.3)E6SMT>7!E/6-L87-S(&YE="YX=')I;2YC<FTN9&EC=&EO
    M;F%R>2YO8FIE8W0N3&%N9W5A9V4[;&]A9&5R/6]R9RYJ8F]S<RYM>"YL;V%D
    M:6YG+E5N:69I961#;&%S<TQO861E<C- 8V%B.#4T>R!U<FP]9FEL93HO1#HO
    M:F%V82]J8F]S<RTS+C N-"]S97)V97(O<W5P<&]R=&-R;2]T;7 O9&5P;&]Y
    M+W-E<G9E<B]S=7!P;W)T8W)M+V1E<&QO>2]3=7!P;W)T0U)-+F5A<B\V-BY3
    M=7!P;W)T0U)-+F5A<BUC;VYT96YT<R]C<FU%2D)S+FIA<B!].V9I;FES:&5D
    M/69A;'-E.V5N:&%N8V5D/71R=65

    Can you check what metadata you can see?
    I gathered that you have an access to dWfStepName, and dID, but not to other metadata values - sounds like the values you can see are taken from workflow temporary files and if you want to have all the metadata of the item you will have to run a search query to get them. I would suggest to follow to other workflow screens (workflow_review_frames template), because there it is possible to see all metadata and you can get an idea what needs to be done.

  • Problem with local class, static private attribute and public method

    Hello SDN,
    Consider the following situation:
    1) I have defined a LOCAL class airplane.
    2) This class has a private static attribute "type table of ref to" airplane (array of airplanes)
    3) A public method should return the private static table attribute
    Problems:
    a) The table cannot be given as an EXPORTING parameter in the method because TYPE TABLE OF... is not supported and I get syntax errors. I also cannot define a dictionary table type because it is a local class.
    b) The table cannot be given as a TABLES parameter in the method because TABLES is not supported in the OO context.
    c) The table cannot be given as an EXPORTING parameter in the method defined as LIKE myStaticAttribute because my method is PUBLIC and my attribute is PRIVATE. ABAP syntax requires that all PUBLIC statements are defined before PRIVATE ones, therefore it cannot find the attribute to reference to with LIKE.
    I see only 2 solutions:
    a) Never ever use local classes and always use global classes so that I might define a dictionary table type of my class which I can then use in my class.
    b) Make the attribute public, but this goes against OO principles, and isn't really an option.
    Am I missing anything here, or is this simply overlooked so far?

    Hello Niels
    Since your class is local and, thus, only know to the "surrounding" application is does not really make sense to make it public to any other application.
    However, if you require to store instances of your local classes in internal tables simply use the most generic reference type possible, i.e. <b>OBJECT</b>.
    The following sample report shows how to do that. Furthermore, I believe it also shows that there are <u><b>no </b></u>serious inconsistency in the ABAP language.
    *& Report  ZUS_SDN_LOCAL_CLASS
    REPORT  zus_sdn_local_class.
    " NOTE: SWF_UTL_OBJECT_TAB is a table type having reference type OBJECT
    *       CLASS lcl_airplane DEFINITION
    CLASS lcl_airplane DEFINITION.
      PUBLIC SECTION.
        DATA:    md_counter(3)             TYPE n.
        METHODS: constructor,
                 get_instances
                   RETURNING
                     value(rt_instances)   TYPE swf_utl_object_tab.
      PRIVATE SECTION.
        CLASS-DATA: mt_instances    TYPE swf_utl_object_tab.
    ENDCLASS.                    "lcl_airplane DEFINITION
    *       CLASS lcl_airplane IMPLEMENTATION
    CLASS lcl_airplane IMPLEMENTATION.
      METHOD constructor.
        APPEND me TO mt_instances.
        DESCRIBE TABLE mt_instances.
        md_counter = syst-tfill.
      ENDMETHOD.                    "constructor
      METHOD get_instances.
        rt_instances = mt_instances.
      ENDMETHOD.                    "get_instance
    ENDCLASS.                    "lcl_airplane IMPLEMENTATION
    DATA:
      gt_instances      TYPE swf_utl_object_tab,
      go_object         TYPE REF TO object,
      go_airplane       TYPE REF TO lcl_airplane.
    START-OF-SELECTION.
      " Create a few airplane instance
      DO 5 TIMES.
        CREATE OBJECT go_airplane.
      ENDDO.
      gt_instances = go_airplane->get_instances( ).
      CLEAR: go_airplane.
      LOOP AT gt_instances INTO go_object.
        go_airplane ?= go_object.
        WRITE: / 'Airplane =', go_airplane->md_counter.
      ENDLOOP.
    END-OF-SELECTION.
    Regards
      Uwe<u></u>

  • No implementing class registered for the interface

    Hello,
    I know that I'm not the first one posting this problem, but I can't find an appropriate solution for my problem. When I execute the FlightSeatAvailabilityCheck scenario I got the following error:
    Unable to check flight availability.       
    Error Type:      XI system error
    Error Details:      No implementing class registered for the interface (type ifmmessif, name FlightSeatAvailabilityQuery_Out, namespace http://sap.com/xi/XI/Demo/Agency )
    I have to say that I accidently deleted the proxy but I have recreated and activated the concerning proxy (CO_SXIDAG_FSA_QUERY) and still get the error. I read in this thread: XI 3.0 Demo: Unable to check flight availability: XI System Error that it would help to create a RFC in sm59. Why do I have to do this although I'm using proxies?
    And does it make a difference in which client I create and activate the proxies?
    Regards
    Marc

    i tried following solution also from old messages in SDN -
    Go to SXMB_ADM.
    Execute Integration Engine
    EDIT-> Change Global configuration data
    Select the Role of Business System is Integration Server
    Again started getting error-PROXY_NOT_ALLOWED_ON_IS:
    Proxy calls are not permitted on sender or receiver side on the IS (client)</SAP:Stack>
    But again  one of the messages in SDN suggests to change Global configuration data,
    EDIT-> Change Global configuration data
    Select the Role of Business System is Application system.
    it seems it's going in loop....

  • Selecing old attribute value in an implementation class

    Dear All,
    Am using ADF 11.1.1.3 and am trying to write some validation on an entity's implementation class ( in doDml method ) and i need to compare one attribute old value with the current value ...
    how can i do that ?

    The EntityImpl class has a method      getPostedAttribute(int index) which gets the value originally read for this attribute from the database.
    Timo

Maybe you are looking for

  • I keep getting "This content requires HDCP for playback" with my new Apple TV 3.

    I keep getting "This content requires HDCP for playback" with my new Apple TV 3. I've returned one and got a new one. I've turned everything on and off. I've upgraded my bandwith. I've tried using different HDMI ports. Nothing is working. Sometimes a

  • CCMS_ONALERT_EMAIL working but CCMS_ONALERT_EMAIL_V2 isnt

    hello Guys, I have configured CCMS alerts in my solution manager system. For alert management I have configured both the methods CCMS_ONALERT_EMAIL_V2 and CCMS_ONALERT_EMAIL. Strangely CCMS_ONALERT_EMAIL is working fine and the alerts are being sent

  • Missing metadata after slideshow export

    I love to show some metadata - like a description - within exportet JPGs. That way they are visible on any device used to present the pictures. As far as I found out this is only possible by doing a slideshow export (watermarks unfortunately can not

  • Info on hard drives says its nearly full, but I have next to nothing on a new hard drive.

    When I ask for info on my hard drive, it says that the disk is nearly full.  I just had the hard drive replaced and there is hardly anthing on it.  If I ask for info on each individual folder it only adds up to about 30 gigs.  I don't see anywhere a

  • Sap oss connection failed.

    Dear exports, I am getting the oss connection failed error.How it will reslove please provide any solution. I have checked in sm59. logon    : connection error. 1)errordetails: error when opening the RFC  an connection. 2)errordetail : error partner: