Passing null in ArrayList as part of EJB Method gives NullPointerException

Hi gurus,
I have many EJBS in my application. All are working fine but when I pass null as element of ArrayList (serializable object) and pass ArrayList object to SessionBean it gives me NullPointerException. I think as part of EJB Specification it allows the Serialized object as part of method call but I think Oracle9iAS 903 has this as an error.
e.g
     ArrayList mylist = new ArrayList();
     mylist.add("lar");
     mylist.add("%");
     mylist.add(new Long(0));
     mylist.add("%");
     mylist.add(new Long(0));
     mylist.add("");
     mylist.add("%");
     mylist.add("Y");
     mylist.add(null);
     mylist.add(new Long(0));
Object obj= ictx.lookup("java:comp/env/sampleEJB");
SampleEJBHome home =(SampleEJBHome)PortableRemoteObject.narrow(obj,SampleEJBHome.class);
SampleEJB sampleEJB = home.create();
ArrayList retList =sampleEJB.test(mylist);
I think this is error in Oracle 903 IAS. Let me know If I am doing anything wrong here.
Thanks
Ritesh

I checked the bug status for you. It looks like one of our support analysts has tested the patch for the bug I mentioned to see if it resolves the similar problem you have and determined that it doesn't fix the problem you are facing. The bug you mention is still open and pending some further analysis by our bug fixing team.
The bug text isn't a 100% match what you have entered here in the forum, so it might be still worth your while to get the patch for bug 2753425 from support and test it in an isolated environment to see if it does resolve your problem. I'd recommend that you talk to your support analyst and discuss this with them.
cheers
-steve-

Similar Messages

  • When we pass null in JDialog title in linux it is showing 2 in title????

    When we pass null in tilte of JDialog using setTitle("") method in linux environment is showing some garbage value like <2> in title bar of JDialog but in Windows O.S. JDialog is working fine means not showing anything in titlebar when we pass null in JDialog title using setTitle("")
    So i cant find where the problem is ??
    Please guide me what to do with this issue?

    I'm not sure if this will work, it's probably an obvious idea that you've already tried; but how about passing a space to the setTitle() method? setTitle(" ") Are you using the same version of the jdk on Windows and Linux? If so, it's probably a Linux issue.

  • Arraylist issue: pass all the arrayList `s object to other arrayList ...

    hi all...i hope somebody could show me some direction on my problem...i want to pass a arraylist `s cd information to an other arraylist
    and save the new arraylist `s object to a file...i try to solve for a long ..pls help...
    import java.text.*;
    import java.util.*;
    import java.io.*;
    public class Demo{
         readOperation theRo = new readOperation();
         errorCheckingOperation theEco = new errorCheckingOperation();
         ArrayList<MusicCd>  MusicCdList;
         private void heading()
              System.out.println("\tTesting read data from console, save to file, reopen that file\t");
         private void readDataFromConsole()
         //private void insertCd()
            MusicCdList = new ArrayList<MusicCd>( ); 
            MusicCd theCd;
            int muiseCdsYearOfRelease;
            int validMuiseCdsYearOfRelease;
            String muiseCdsTitle;
              while(true)
                    String continueInsertCd = "Y";
                   do
                        muiseCdsTitle = theRo.readString("Please enter your CD`s title : ");
                        muiseCdsYearOfRelease = theRo.readInt("Please enter your CD`s year of release : ");
                        validMuiseCdsYearOfRelease = theEco.errorCheckingInteger(muiseCdsYearOfRelease, 1000, 9999);
                        MusicCdList.add(new MusicCd(muiseCdsTitle, validMuiseCdsYearOfRelease));//i try add the cd`s information to the arrayList
                        MusicCdList.trimToSize();
                        //saveToFile(MusicCdList);
                        continueInsertCd = theRo.readString("Do you have another Cd ? (Y/N) : ");
                   }while(continueInsertCd.equals("Y") || continueInsertCd.equals("y") );
                   if(continueInsertCd.equals("N") || continueInsertCd.equals("n"));
                                                    //MusicCdList.add(new MusicCd(muiseCdsTitle, muiseCdsYearOfRelease));                              
                        break;
                      //System.out.println("You `ve an invalid input " + continueInsertCd + " Please enter (Y/N) only!!");
         //i want to pass those information that i just add to the arrayList to file
         //I am going to pass the arraylist that contains my cd`s information to new arraylist "saveitems and save it to a file...
         //i stuck on this problem
         //how do i pass all the arrayList `s object to another arraylist ..pls help
         //it is better show me some example how to solve thx a lot
         private void saveToFile(ArrayList<MusicCd> tempItems)
              ArrayList<MusicCd> saveItems;
              saveItems = new ArrayList<MusicCd>();
              try
                   File f = new File("cdData.txt");
                   FileOutputStream fos = new FileOutputStream(f);
                   ObjectOutputStream oos = new ObjectOutputStream(fos);
                   saveItems.add(ArrayList<MusicCd> tempItems);
                   //items.add("Second item.");
                   //items.add("Third item.");
                   //items.add("Blah Blah.");
                   oos.writeObject(items);
                   oos.close();
              catch (IOException ioe)
                   ioe.printStackTrace();
              try
                   File g = new File("test.fil");
                   FileInputStream fis = new FileInputStream(g);
                   ObjectInputStream ois = new ObjectInputStream(fis);
                   ArrayList<String> stuff = (ArrayList<String>)ois.readObject();
                   for( String s : stuff ) System.out.println(s);
                   ois.close();
              catch (Exception ioe)
                   ioe.printStackTrace();
         public static void main(String[] args)
              Demo one = new Demo();
              one.readDataFromConsole();
              //one.saveToFile();
              //the followring code for better understang
    import java.io.Serializable;
    public class MusicCd implements Serializable
         private String musicCdsTitle;
            private int yearOfRelease;
         public MusicCd()
              musicCdsTitle = "";
              yearOfRelease = 1000;
         public MusicCd(String newMusicCdsTitle, int newYearOfRelease)
              musicCdsTitle = newMusicCdsTitle;
              yearOfRelease = newYearOfRelease;
         public String getTitle()
              return musicCdsTitle;
         public int getYearOfRelease()
              return yearOfRelease;
         public void setTitle(String newMusicCdsTitle)
              musicCdsTitle = newMusicCdsTitle;
         public void setYearOfRelease(int newYearOfRelease)
              yearOfRelease = newYearOfRelease;
         public boolean equalsName(MusicCd otherCd)
              if(otherCd == null)
                   return false;
              else
                   return (musicCdsTitle.equals(otherCd.musicCdsTitle));
         public String toString()
              return("Music Cd`s Title: " + musicCdsTitle + "\t"
                     + "Year of release: " + yearOfRelease + "\t");
         public ArrayList<MusicCd> getMusicCd(ArrayList<MusicCd> tempList)
              return new ArrayList<MusicCd>(ArrayList<MusicCd> tempList);
    import java.util.Scanner;
    import java.util.InputMismatchException;
    import java.util.NoSuchElementException;
    public class errorCheckingOperation
         public int errorCheckingInteger(int checkThing, int lowerBound, int upperBound)
               int aInt = checkThing;
               try
                    while((checkThing < lowerBound ) || (checkThing > upperBound) )
                         throw new Exception("Invaild value....Please enter the value between  " +  lowerBound + " & " +  upperBound );
               catch (Exception e)
                 String message = e.getMessage();
                 System.out.println(message);
               return aInt;
           public int errorCheckingSelectionValue(String userInstruction)
                int validSelectionValue = 0;
                try
                     int selectionValue;
                     Scanner scan = new Scanner(System.in);
                     System.out.print(userInstruction);
                     selectionValue = scan.nextInt();
                     validSelectionValue = errorCheckingInteger(selectionValue , 1, 5);
               catch (NoSuchElementException e)
                   //if no line was found
                   System.out.println("\nNoSuchElementException error occurred (no line was found) " + e);
              catch (IllegalStateException e)
                   // if this scanner is closed
                   System.out.println("\nIllegalStateException error occurred (scanner is closed)" + e);
              return validSelectionValue;
    import java.util.*;
    public class readOperation{
         public String readString(String userInstruction)
              String aString = null;
              try
                         Scanner scan = new Scanner(System.in);
                   System.out.print(userInstruction);
                   aString = scan.nextLine();
              catch (NoSuchElementException e)
                   //if no line was found
                   System.out.println("\nNoSuchElementException error occurred (no line was found) " + e);
              catch (IllegalStateException e)
                   // if this scanner is closed
                   System.out.println("\nIllegalStateException error occurred (scanner is closed)" + e);
              return aString;
         public char readTheFirstChar(String userInstruction)
              char aChar = ' ';
              String strSelection = null;
              try
                   //char charSelection;
                         Scanner scan = new Scanner(System.in);
                   System.out.print(userInstruction);
                   strSelection = scan.next();
                   aChar =  strSelection.charAt(0);
              catch (NoSuchElementException e)
                   //if no line was found
                   System.out.println("\nNoSuchElementException error occurred (no line was found) " + e);
              catch (IllegalStateException e)
                   // if this scanner is closed
                   System.out.println("\nIllegalStateException error occurred (scanner is closed)" + e);
              return aChar;
         public int readInt(String userInstruction) {
              int aInt = 0;
              try {
                   Scanner scan = new Scanner(System.in);
                   System.out.print(userInstruction);
                   aInt = scan.nextInt();
              } catch (InputMismatchException e) {
                   System.out.println("\nInputMismatchException error occurred (the next token does not match the Integer regular expression, or is out of range) " + e);
              } catch (NoSuchElementException e) {
                   System.out.println("\nNoSuchElementException error occurred (input is exhausted)" + e);
              } catch (IllegalStateException e) {
                   System.out.println("\nIllegalStateException error occurred (scanner is closed)" + e);
              return aInt;
    }

    sorry for my not-clear descprtion...thc for your help....i got a problem on store some data to a file ....u can see my from demo..
    Step1: i try to prompt the user to enter his/her cd `s information
    and i pass those cd `s information to an object "MuiscCd" ..and i am going to add this "MuiscCd" to the arrayList " MusicCdList ". i am fine here..
    Step2: and i want to save the object that `s in my arrayList " MusicCdList " to a file....i got stuck here..<_> ..(confused).
    Step3:
    i will reopen the file and print it out..(here i am alright )

  • EJB method parameters are sent but nulls are received

    My client calls my EJB method passing two serializable objects as parameters.
    Using print statements and a network snoop I have confirmed that:
    - the client is calling the method with valid objects
    - from examining the data it appears that the objects are being serialized and sent across the network
    - the EJB seems to receive null values.
    I have deployed the EJB to both 9iAS and a standalone instance of OC4J with exactly the same results.
    Any ideas?

    Hi Dale and Kamesh,
    No error messages? Nothing in the log files? Have you tried running OC4J in debug mode? In case you haven't already seen it, this "Technical Note" has more details.
    Pardon me if I am stating the obvious, but it seems like there is a deserialization problem. Are the client JVM and server JVM both the same version? Have you implemented custom [de]serialization for the parameter classes? Is the same version of the parameter class files located both at the client and at the server?
    Good Luck,
    Avi.

  • Need help passing text value as multi/part

    this question, again.
    Hi guys . i have a multipart form that works great. the only problem i am having is passing the value of a text feild to it since getParamater does not work with COS. I have to pass an ID to the servlet. Can anyone give me a hand? the only thing i can get to work is getName() - which doesnt do what i need at all.
    the area in question is this
                    //else if (_part.isParam()) {
                         id = _part.getName();
         out.println(id);
                        //}  here is my entire servlet
    package savedata;
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import com.oreilly.servlet.multipart.MultipartParser;
    import com.oreilly.servlet.multipart.Part;
    import com.oreilly.servlet.multipart.FilePart;
    import com.oreilly.servlet.multipart.ParamPart;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    import java.sql.*;
    public class imageUpdate extends HttpServlet {
        private String fileSavePath;
      public void init(){
          // save uploaded files to a 'data' directory in the web app
          fileSavePath =   getServletContext().getRealPath("/") + "data";
      public void doPost(HttpServletRequest request,
        HttpServletResponse response) throws ServletException,
        java.io.IOException {
        response.setContentType("text/html");
        java.io.PrintWriter out = response.getWriter();
         HttpSession session = request.getSession(true);
        out.println("<html>");
        out.println("<head>");
        out.println("<title>File uploads</title>"); 
        out.println("</head>");
        out.println("<body>");
        out.println("<h2>Here is information about any uploaded files</h2>");
         String id = "";
         String session_ID = session.getId();
         out.println(session_ID);
        try{
            // file limit size of five megabytes
            MultipartParser parser = new MultipartParser(
               request,5 * 1024 * 1024);
            Part _part = null;
              String[] img = new String[10];
              for (int j = 0; j < img.length; j++) {
                   img[j] = "";
              int imgcount = 0;
                while ((_part = parser.readNextPart()) != null) {
                    if (_part.isFile()) {
                        // get some info about the file
                        FilePart fPart = (FilePart) _part;
                        String name = fPart.getFileName();
                        if (name != null) {
                            long fileSize = fPart.writeTo(new java.io.File(fileSavePath));
                            out.println("The user's file path for the file: " +
                            fPart.getFilePath() + "<br>");
                            img[imgcount] = fPart.getFilePath();
                            out.println("The content type of the file: " +
                            fPart.getContentType()+ "<br>");
                            out.println("The file size: " +fileSize+ " bytes<br><br>");
                            //commence with another file, if there is one
                            imgcount++;
                        else {
                            out.println("The user did not upload a file for this part.");
                    //else if (_part.isParam()) {
                         id = _part.getName();
                              out.println(id);
                // outside of while
                insert(img,id);          out.println("</body>");
            out.println("</html>");
            out.close();
        } catch (java.io.IOException ioe){
           //an error-page in the deployment descriptor is
           //mapped to the java.io.IOException
            throw new java.io.IOException(
                "IOException occurred in: " + getClass().getName());
        public void doGet(HttpServletRequest request,
          HttpServletResponse response) throws ServletException,
            java.io.IOException {
            throw new ServletException(
                "GET method used with " + getClass().getName()+
                     ": POST method required.");
    public void insert(String[] img,String id) {
        Connection con = null;
         PreparedStatement prep = null;
         String sql = null;
         ResultSet result;
        try {
          Class.forName("org.gjt.mm.mysql.Driver").newInstance();
          con = DriverManager.getConnection("jdbc:mysql://localhost:3306/xxx?user=root&password=");
          if(!con.isClosed())
            System.out.println("Successfully connected to " +
              "MySQL server using TCP/IP...");
                           try
             sql = "UPDATE freehold_form_main SET img1=?, img2=?, img3=?, img4=?, img5=?, img6=?, img7=?, img8=?, img9=?, img10=? WHERE session_id = '"+id+"'";         
              prep = con.prepareStatement(sql);
        //      System.out.println("img.length = " + img.length);
             for (int i = 0; i < img.length; i++) {
                   prep.setString((i + 1), img);
    prep.executeUpdate();
                             System.out.print("HERE IS THE ID:"+id);
    catch(Exception m)
    System.out.print(m.getMessage());
    } catch(Exception e) {
    System.err.println("Exception: " + e.getMessage());
    } finally {
    try {
    if(con != null)
    con.close();
    } catch(SQLException e) {}
    Thank in advance

    this question, again.
    Hi guys . i have a multipart form that works great. the only problem i am having is passing the value of a text feild to it since getParamater does not work with COS. I have to pass an ID to the servlet. Can anyone give me a hand? the only thing i can get to work is getName() - which doesnt do what i need at all.
    the area in question is this
                    //else if (_part.isParam()) {
                         id = _part.getName();
         out.println(id);
                        //}  here is my entire servlet
    package savedata;
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import com.oreilly.servlet.multipart.MultipartParser;
    import com.oreilly.servlet.multipart.Part;
    import com.oreilly.servlet.multipart.FilePart;
    import com.oreilly.servlet.multipart.ParamPart;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    import java.sql.*;
    public class imageUpdate extends HttpServlet {
        private String fileSavePath;
      public void init(){
          // save uploaded files to a 'data' directory in the web app
          fileSavePath =   getServletContext().getRealPath("/") + "data";
      public void doPost(HttpServletRequest request,
        HttpServletResponse response) throws ServletException,
        java.io.IOException {
        response.setContentType("text/html");
        java.io.PrintWriter out = response.getWriter();
         HttpSession session = request.getSession(true);
        out.println("<html>");
        out.println("<head>");
        out.println("<title>File uploads</title>"); 
        out.println("</head>");
        out.println("<body>");
        out.println("<h2>Here is information about any uploaded files</h2>");
         String id = "";
         String session_ID = session.getId();
         out.println(session_ID);
        try{
            // file limit size of five megabytes
            MultipartParser parser = new MultipartParser(
               request,5 * 1024 * 1024);
            Part _part = null;
              String[] img = new String[10];
              for (int j = 0; j < img.length; j++) {
                   img[j] = "";
              int imgcount = 0;
                while ((_part = parser.readNextPart()) != null) {
                    if (_part.isFile()) {
                        // get some info about the file
                        FilePart fPart = (FilePart) _part;
                        String name = fPart.getFileName();
                        if (name != null) {
                            long fileSize = fPart.writeTo(new java.io.File(fileSavePath));
                            out.println("The user's file path for the file: " +
                            fPart.getFilePath() + "<br>");
                            img[imgcount] = fPart.getFilePath();
                            out.println("The content type of the file: " +
                            fPart.getContentType()+ "<br>");
                            out.println("The file size: " +fileSize+ " bytes<br><br>");
                            //commence with another file, if there is one
                            imgcount++;
                        else {
                            out.println("The user did not upload a file for this part.");
                    //else if (_part.isParam()) {
                         id = _part.getName();
                              out.println(id);
                // outside of while
                insert(img,id);          out.println("</body>");
            out.println("</html>");
            out.close();
        } catch (java.io.IOException ioe){
           //an error-page in the deployment descriptor is
           //mapped to the java.io.IOException
            throw new java.io.IOException(
                "IOException occurred in: " + getClass().getName());
        public void doGet(HttpServletRequest request,
          HttpServletResponse response) throws ServletException,
            java.io.IOException {
            throw new ServletException(
                "GET method used with " + getClass().getName()+
                     ": POST method required.");
    public void insert(String[] img,String id) {
        Connection con = null;
         PreparedStatement prep = null;
         String sql = null;
         ResultSet result;
        try {
          Class.forName("org.gjt.mm.mysql.Driver").newInstance();
          con = DriverManager.getConnection("jdbc:mysql://localhost:3306/xxx?user=root&password=");
          if(!con.isClosed())
            System.out.println("Successfully connected to " +
              "MySQL server using TCP/IP...");
                           try
             sql = "UPDATE freehold_form_main SET img1=?, img2=?, img3=?, img4=?, img5=?, img6=?, img7=?, img8=?, img9=?, img10=? WHERE session_id = '"+id+"'";         
              prep = con.prepareStatement(sql);
        //      System.out.println("img.length = " + img.length);
             for (int i = 0; i < img.length; i++) {
                   prep.setString((i + 1), img);
    prep.executeUpdate();
                             System.out.print("HERE IS THE ID:"+id);
    catch(Exception m)
    System.out.print(m.getMessage());
    } catch(Exception e) {
    System.err.println("Exception: " + e.getMessage());
    } finally {
    try {
    if(con != null)
    con.close();
    } catch(SQLException e) {}
    Thank in advance

  • Passing null/empty values from a actionscript VO to a Coldfusion ORM object

    This is the situation.
    If you have an actionscript VO that binds to a Coldfusion ORM object via the RemoteClass metadata and some of the values are not set, null, or empty strings and you pass it from Flex to Coldfusion then the Coldfusion deserialization barfs saying the values are not acceptable date values (for type="date") or valid emails (for validation="email") or other such validations, even if required="false" on the property.
    For instance, if you have the following actionscript VO:
    package vo
        [RemoteClass(alias="com.companyname.Person")]
        [Bindable]
        public class Person
            public var person_id:Number;
            public var last_name:String;
            public var first_name:String;
            public var email:String;
            public var created_date:date;
         public function Person() {}
    And you have the corresponding Coldfusion component:
    <cfcomponent displayname="person" output="false"
        alias="com.companyname.Person"
        schema="dbo" persistent="true"
        table="PERSON">
        <cfproperty name="person_id" type="numeric" fieldtype="id" validate="integer" required="true" column="PERSON_ID"/>
        <cfproperty name="last_name" type="string" column="LAST_NAME" required="true"/>
        <cfproperty name="first_name" type="string" required="true" column="FIRST_NAME"/>
        <cfproperty name="email" type="string" validate="email" required="false" column="EMAIL"/>
        <cfproperty name="date_created" type="date" required="false" column="DATE_CREATED"/>
    </cfcomponent>
    Then if you pass the actionscript VO as is to Coldfusion, the deserialization complains that you do not have a valid email or a valid date for date_created.  This is bad, bad, bad.  Essentially if you have a validation of certain types (email being one) or a date property, or probably some other cases, then you essentially can not make it not required, it automatically makes it required because the Coldfusion serializer considers null/empty values as invalid dates or emails.  But the serializer should not care for values that are not required, there has to be a way to pass null/empty values to these data types, but apparently there's not.  If you pass an empty string ("") you still have the same problem.  I know Coldfusion does not have null values, but there has to be a way to do this, otherwise it defeats the purpose of having required="false" and some kind of validation on the property.
    There seems to be two ways around it.  One is to override the implicit setters for the properties on the Coldfusion side and check for 0 length values yourself, then set the property if it is not, or create your own validation routine.  I ended up creating my own validation function since I didn't want to have to write a setter function for everyone of these cases and I can pass back user friendly validation messages.
    Have other people encountered this problem?  How have you gotten around it?  Thanks.

    I realize that I didn't clarify that I am using ColdFusion
    for getting the data. This class was generated by the Create CFC
    wizard in Flex Builder.
    package com.generated
    [Managed]
    [RemoteClass(alias="components.generated.clients.Clients")]
    public class Clients
    public var clientid:Number = 0;
    public var clientfirstname:String = "";
    public var clientlastname:String = "";
    public var clientaddress1:String = "";
    public var clientaddress2:String = "";
    public var clientcity:String = "";
    public var clientstate:String = "";
    public var clientzip:String = "";
    public var clientphone:String = "";
    public var clientemail:String = "";
    public function Clients()
    }

  • Passing null/empty values from Flex to a Coldfusion ORM object

    This is the situation.
    If you have an actionscript VO that binds to a Coldfusion ORM object via the RemoteClass metadata and some of the values are not set, null, or empty strings and you pass it from Flex to Coldfusion then the Coldfusion deserialization barfs saying the values are not acceptable date values (for type="date") or valid emails (for validation="email") or other such validations, even if required="false" on the property.
    For instance, if you have the following actionscript VO:
    package vo
        [RemoteClass(alias="com.companyname.Person")]
        [Bindable]
        public class Person
            public var person_id:Number;
            public var last_name:String;
            public var first_name:String;
            public var email:String;
            public var created_date:date;
         public function Person() {}
    And you have the corresponding Coldfusion component:
    <cfcomponent displayname="person" output="false"
        alias="com.companyname.Person"
        schema="dbo" persistent="true"
        table="PERSON">
        <cfproperty name="person_id" type="numeric" fieldtype="id" validate="integer" required="true" column="PERSON_ID"/>
        <cfproperty name="last_name" type="string" column="LAST_NAME" required="true"/>
        <cfproperty name="first_name" type="string" required="true" column="FIRST_NAME"/>
        <cfproperty name="email" type="string" validate="email" required="false" column="EMAIL"/>
        <cfproperty name="date_created" type="date" required="false" column="DATE_CREATED"/>
    </cfcomponent>
    Then if you pass the actionscript VO as is to Coldfusion, the deserialization complains that you do not have a valid email or a valid date for date_created.  This is bad, bad, bad.  Essentially if you have a validation of certain types (email being one) or a date property, or probably some other cases, then you essentially can not make it not required, it automatically makes it required because the Coldfusion serializer considers null/empty values as invalid dates or emails.  But the serializer should not care for values that are not required, there has to be a way to pass null/empty values to these data types, but apparently there's not.  If you pass an empty string ("") you still have the same problem.  I know Coldfusion does not have null values, but there has to be a way to do this, otherwise it defeats the purpose of having required="false" and some kind of validation on the property.
    There seems to be two ways around it.  One is to override the implicit setters for the properties on the Coldfusion side and check for 0 length values yourself, then set the property if it is not, or create your own validation routine.  I ended up creating my own validation function since I didn't want to have to write a setter function for everyone of these cases and I can pass back user friendly validation messages.
    Have other people encountered this problem?  How have you gotten around it?  Thanks.

    Looks like a known workaround to this issue is to wrap the Flex object in an array.
    The ColdFusion CFC will accept that as an array, with the first an only element being a struct, which is the object you built in Flex.

  • Passing  null values to the attributes of a CAF operation

    Hi,
    In CAF I am trying to fetch data through Web Service. For this I need to pass null value for the attributes of the operation.If I set the value to null it gives me missing parameter as the error.
    Can anyone tell me how to pass null values to the attributes of a CAF operation?

    Hi Xavier,
    Declare the two variables of type if_wd_contex_node for e.g. lv_node and if_wd_context_element for e.g. lv_element. Now in the first one lets say lv_node get the refrence of dynamically created node like:
    lv_node = wd_context->get_child_node('<node name>').
    Then get the refrence of element like:
    lv_element = lv_node->get_element( ). (You can also pass index as parameter check the method API)
    then just set the value of attribute you want like:
    lv_element->set_attribute( exporting name = '<attribute name>' value = '<your value>').
    Regards,
    Neha

  • Passing null value to stored procedure

    I am calling a stored procedure from ssis package. In my stored procedure I have parameters which is set to default value of null i.e if nothing is passed I need to assume the value of parameter to be null. 
    In ssis package I created a variable its a datetime variable but when I dont pass anything or blank 
    it automatically gets some date but instead I want it to pass NUll.
    Thank You for the help

    Hi Rama,
    SSIS evaluates null value in a date type variable as “12/30/1899 12:00:00 AM” by default. As long as the date type of the variable is date, it always gives “12/30/1899 12:00:00 AM” instead of null. This behavior still exists in SSIS 2012. So, I am afraid
    that you have to modify your stored procedure to yield to this by design behavior of SSIS.
    If you have concerns, I would suggest you submitting a wish at https://connect.microsoft.com/sql. 
    Connect site is a connection point between you and Microsoft, and ultimately the larger community. Your feedback enables Microsoft to make software and services the best that they can be, and you can learn about and contribute to exciting projects.
    Regards,
    Mike Yin
    TechNet Community Support

  • Button URL Redirect - Issue passing %null% from LOV

    I have issue when attempting to pass %null% from a LOV to a subsequent target page. The URL Redirect works fine when a value in selected in the LOV but passes gibberish "?ll" when no value is selected from the LOV. Can anyone shed some light on what's is going on?
    Redirect looks like this:
    f?p=112:411:508326687872582::NO:RP,411:P411_AGENCY,P411_CATEGORY,P411_BUDGET_YEAR,P411_OIT_OFFICE,P411_DESCRIPTION:002,%null%,2012,1665,webJeff
    Edited by: jwellsnh on Jun 2, 2010 4:42 PM

    svk1965,
    Thank you for your response, I read many other threads and you are definitely on the right track. Got impatient though and took my project on a different track which ended being a better solution for me after all.
    Jeff

  • Passing Null value to MS SQL Server from Oracle BPEL

    Hi,
    We are using the DB adapter to invoke a procedure on MS SQL Server database. We need to pass null parameter to one of the parameters.
    When we pass 'null', we are getting a conversion error.
    Please provide your inputs.
    Regards.
    John

    The datatype is int.
    When we pass "null" we are getting the following error.
    Error while converting to a Java object. Unable to convert the XSD element ss_status_id whose SQL type is INT and JDBC type is INTEGER. Cause: java.lang.NumberFormatException: For input string: "null" ; nested exception is: ORABPEL-11803 Error while converting to a Java object. Unable to convert the XSD element ss_status_id whose SQL type is INT and JDBC type is INTEGER. Cause: java.lang.NumberFormatException: For input string: "null" Check to ensure that the XML data describing the object matches the definition of the element in the XSD. Contact oracle support if error is not fixable.
    After using xsi:nil="true", we are not getting any error as such. But the procedure is not giving expected data.

  • Passing null value to a Date field in OPA

    Hi,
    We are using Determinations server of OPA.
    I have created OPA web service proxy classes and using java client class for calling methods of OPA web service.
    Webcenter calls OPA web service for validating business logic. There is a Date field in OPA which is not mandatory, if web service is called with date value, logic is working fine, else if we pass null value or ignore setting Date value all conclusion of the rule is becoming false.
    for example :
    If agreement exists, pass agreement expiry date.
    Setting Input attributes if date is not null:
    global.setAGREEMENTEXPDATE(new DateAttributeType());
    global.getAGREEMENTEXPDATE().setDateVal(xmlGrogerianCalendar);
    if there is no agreement, pass null for agreement expiry date
    we are not setting Date attribute and sending request to the server
    Is it need to pass Attribute if it is not mandatory and has no value?
    If yes, how to pass null value?
    Please help on this.
    Thanks,
    Sri

    All optional parameters needs to be send to the OPA Determination Server, if value is not known then that attribute should be set to the "Uncertain" value as shown below.
    global.setAGREEMENTNUMBER(new TextAttributeType());
    global.getAGREEMENTNUMBER().setUncertainVal(new UncertainValue());
    Thanks,
    Sri

  • How to pass a Java arraylist as a parameter to a StoredProcedureCall

    I need to invoke a stored procedurecall which takes in a collection parameter represented as a nested table. I need to pass a java ArrayList object to it. How can I pass this parameter to the stored procedure using StoredProcedureCall class.

    Hello,
    Check out
    Is possible to pass array/list as parameter in TopLink StoredProcedureCall?
    for some more information on using VARRAYs in 10.1.3. TopLink 11 has a feature that converts VARRAYs to/from collection types for you. An example using "myProcedure" that has an inout parameter "names" defined as type "NAMELIST_TYPE" would be:
        StoredProcedureCall sqlcall = new StoredProcedureCall();
        sqlcall.setProcedureName("myProcedure");
        sqlcall.addUnamedInOutputArgument("names", "names", Types.ARRAY, "NAMELIST_TYPE", ArrayList.class);
        DataReadQuery query = new DataReadQuery();
        query.addArgument("names");
        query.setCall(sqlcall);
        Vector args = new Vector();
        ArrayList names = new ArrayList();
        names.add("firstname1");
        names.add("firstname2");
        args.add(names);
        //DataReadQuery returns a collection of DatabaseRecords
        results = (Vector)getSession().executeQuery(query, args);
        //getting one record from the list:
        names =((ArrayList)((DatabaseRecord)results.get(0)).get("names"))This is just a simple example. More complex nested types can be done by providing a ObjectRelationalDatabaseField parameter describing the type, but I dont have any examples showing this handy.
    Hope this example helps,
    Chris

  • Passing null to Optional SQL ServerStored Procedure parameters for Query

    Has anyone been able to pass null to a SQL Server Stored Procedure in a query for Interactive Reporting. I have a procedure that modifies the sql statement if the user passes additional filter data and I want to pass null to it. It works great if I use in reporting services, but I am being forced to us IR. Any help would be appreciated.
    And just a point of issue...why do I have to use an ODBC driver to see or use my stored procedure!! Sorry couldn't resist!
    Edited by: BISolutionBuilders on Jun 29, 2009 10:08 PM

    Why dynamic sql ? It can be static, you are just passing the filter value

  • Exception while passing null as param in custom tag

    Hi,
    I am using Oracle 10g AS(10.1.2). In my j2ee application,while passing NULL as parameter in custom tags, i am getting exception. But it was working fine with oracle 9i as.
    for example:
    This is my code in jsp:
    <%
    String str =null;
    %>
    <test:getInfo id="<%=str%>" />
    While executing the above code, I am getting the following exception :
    javax.servlet.ServletException
    at com.evermind.server.http.EvermindPageContext.handlePageThrowable(EvermindPageContext.java:595)
    at com.evermind.server.http.EvermindPageContext.handlePageException(EvermindPageContext.java:537)
    at ListAlerts.jspService(_ListAlerts.java:1827)
    at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
    at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:350)
    at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509)
    at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:824)
    at com.evermind.server.http.ServletRequestDispatcher.include(ServletRequestDispatcher.java:121)
    at com.evermind.server.http.GetParametersRequestDispatcher.newInclude(GetParametersRequestDispatcher.java:80)
    at com.evermind.server.http.GetParametersRequestDispatcher.include(GetParametersRequestDispatcher.java:34)
    at com.evermind.server.http.EvermindPageContext.include(EvermindPageContext.java:267)
    at Content.jspService(_Content.java:181)
    at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
    at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:350)
    at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509)
    at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:824)
    at com.evermind.server.http.ServletRequestDispatcher.include(ServletRequestDispatcher.java:121)
    at com.evermind.server.http.GetParametersRequestDispatcher.newInclude(GetParametersRequestDispatcher.java:80)
    at com.evermind.server.http.GetParametersRequestDispatcher.include(GetParametersRequestDispatcher.java:34)
    at com.evermind.server.http.EvermindPageContext.include(EvermindPageContext.java:267)
    at Main.jspService(_Main.java:360)
    at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
    at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:350)
    at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509)
    at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:824)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330)
    at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:222)
    at org.apache.struts.action.ActionServlet.processActionForward(ActionServlet.java:845)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:734)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:98)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:824)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:224)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:133)
    at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
    at java.lang.Thread.run(Thread.java:534)
    Please help me....

    Hello,
    I do not remember exactly how the null where handle in Oracle 9iAS. Have you tested what is the differences in the way the <%= null %> is returned in both 9iAS and 10.1.2?
    You may just have to modify the way the value is sent to the bean from the tag.
    Regards
    Tugdual Grall

Maybe you are looking for

  • HT4759 Help me logon to icloud

    I am having trouble logging in to icloud

  • Problem in Select Statment

    I have two tables <b>TAB1</b> <u>F1</u>     <u>F2</u> A1     AA A2     AA A3     BB A4     AA A5     AA <b>TAB2</b> <u>F1</u>     <u>F2</u>     <u>F3</u> B1     AA     D1 B2     BB     D1 B3     CC     D1 B4     AA     D2 B5     AA     D3 B6     BB  

  • Listener Adapters in BPEL and ESB

    I created 3 BPEL Processes and 3 ESB's listening to OA Adapters. All of them listen to the same event. I found from the UI that only one subscription is created for all the 8 listener OA Adapters. When the event is raised all my BPEL Processes are in

  • Selection screen comment..getting error...!

    Hi.., My code: SELECTION-SCREEN COMMENT 80(2) text-027 Error Which I am getting with above syntax: The specified offset "80" is too large (maximum:79) Q: How to slove this? and here I need that text 27 is in greater than 80th position only. Thanks, N

  • Upgrade product CS5 from CS3 to run on Mac -serial number not accepted

    Hi I spoke to your team last week before ordering CS5 for my first time buy Mac. I was told that I DID have a qualifying product running on my Windows laptop - I have a registred copy of CS3 I am trying to iinstall the new CS5 onto the Mac and I am t