GetTagFromIdentifierAndTitle returning nulls - function PreSaveItem

I'm attempting to add what should be a very straightforward date verification routine to a Sharepoint 2010 list.  It's documented all over the web, but for some reason, I can't get it to work.  The code is below:
<script language="javascript" type="text/javascript">
function PreSaveItem()
var date1 = getTagFromIdentifierAndTitle("input","DateTimeFieldDate","Start Date and Time");
var date2 = getTagFromIdentifierAndTitle("input","DateTimeFieldDate","End Date and Time");
var arrDate1 = date1.value.split("/");
var useDate1 = new Date(arrDate1[2], arrDate1[1]-1, arrDate1[0]);
var arrDate2 = date2.value.split("/");
var useDate2 = new Date(arrDate2[2], arrDate2[1]-1, arrDate2[0]);
if(useDate1 > useDate2)
alert("The End Date cannot happen earlier than the Start Date");
return false; // Cancel the item save process
return true; // OK to proceed with the save item
function getTagFromIdentifierAndTitle(tagName, identifier, title) 
   var len = identifier.length;
   var tags = document.getElementsByTagName(tagName);
   for (var i=0; i < tags.length; i++) 
      var tempString = tags[i].id;
      if (tags[i].title == title && (identifier == "" || tempString.indexOf(identifier) == tempString.length - len)) 
         return tags[i];
   return null;
}</script>
I've traced it via debug mode, and it hangs up when I'm trying to parse date1, which contains null values.  I can't understand why it's not pulling the date from the NewForm screen.
To answer the obvious question; yes, I have selected dates on the NewForm screen.
Any help or debugging tips would be greatly appreciated.

Hi,
The script works great in my environment, when start date is less than end date, a dialog will pop up for the warning message:
As you said, “it hangs up when I'm trying to parse date1”, I suggest you log out some information to the console of the browser to check that whether the “title” attribute
of the start date input control is “Start Date and Time” and whether the “date1” object holds the valid date value.
About Using the Console to view errors and debug in IE Developer Tools:
https://msdn.microsoft.com/en-us/library/ie/dn255006(v=vs.85).aspx
Thanks
TechNet Community Support
Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
[email protected]

Similar Messages

  • Select query having count function is returning null

    Hi Everyone,
    Please see the query and help me to get this solved.
    DB version
    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bi
    PL/SQL Release 10.2.0.1.0 - Production
    "CORE     10.2.0.1.0     Production"
    TNS for Linux: Version 10.2.0.1.0 - Production
    NLSRTL Version 10.2.0.1.0 - ProductionQUERY
    SELECT COUNT(*) as V_COUNT
          FROM LAB_ORDER_TMPLT_TEST
          WHERE TEST_ID IN
          (SELECT WEST_TEST_ID
                  FROM TEST_CODE_CONVERSION TCC
                  WHERE TCC.EAST_TEST_ID = 2769)
          GROUP BY LAB_ORDER_TMPLT_ID
          HAVING COUNT(*) > 1;
    It's returning null. Is there any way I can get the value as zero instead of null? Please help.Regards,
    BS2012.

    Hi,
    BS2012 wrote:
    Hi Everyone,
    Please see the query and help me to get this solved.
    DB version
    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bi
    PL/SQL Release 10.2.0.1.0 - Production
    "CORE     10.2.0.1.0     Production"
    TNS for Linux: Version 10.2.0.1.0 - Production
    NLSRTL Version 10.2.0.1.0 - ProductionQUERY
    SELECT COUNT(*) as V_COUNT
    FROM LAB_ORDER_TMPLT_TEST
    WHERE TEST_ID IN
    (SELECT WEST_TEST_ID
    FROM TEST_CODE_CONVERSION TCC
    WHERE TCC.EAST_TEST_ID = 2769)
    GROUP BY LAB_ORDER_TMPLT_ID
    HAVING COUNT(*) > 1;
    It's returning null.
    Really? COUNT never returns NULL; it always returns 0 or a positive integer.
    Do you mean the query results in "no rows selected"?
    Is there any way I can get the value as zero instead of null? Please help.Do you want a query that will produce the same output as the query above, but will produce a single row containing 0 when the query above does not produce anything? That sounds like a job for an outer join:
    WITH    original_query  AS
           SELECT  COUNT(*) AS v_count
           FROM    lab_order_tmplt_test
           WHERE   test_id IN
                       (   SELECT  west_test_id
                           FROM        test_code_conversion tcc
                           WHERE   tcc.east_test_id = 2769
           GROUP BY  lab_order_tmplt_id
    SELECT     NVL (o.v_count, 0)     AS v_count
    FROM               dual
    LEFT OUTER JOIN  original_query  o  ON  o.v_count > 0
    ;If you'd care to post CREATE TABLE and INSERT statements for the sample data, then I could test this.

  • Get textFrame by label returns null and anchored objects

    I have the following two functions:
    function getByLabel(page, label)
        for(var i=0; i < page.allPageItems.length; i++)
            if( page.allPageItems[i].label == label )
                return page.allPageItems[i];
    and
    Object.prototype.findItems = function(/*obj*/props)
        if( !('everyItem' in this) )
            throw new Error("Error: " + this + " is not a collection.");
        var ret = this.everyItem().getElements(),
            i = ret.length,
            e, p;
        while( i-- && e=ret[i] )
            for( p in props )
                if( (p in e) && e[p]===props[p] ) continue;
                ret.splice(i,1);
        return ret;
    In my page structure, I got one main text frame (the content area) and two vertical text fromes on the sides of the page. There is also a small box textframe on top of the page. All these textboxes EXCEPT the main text frame are ALL "ANCHORED objects". I had to make them anchored objects, eitherwise after importing data, the boxes would jump around. (Example, the small box textframe that is on the top would get moved to the content area textframe etc). Not sure if using anchored objects is the proper way to fix this.
    When I try to get the small box text frame, it does not work using the findItems (returns null) but it works fine with the getByLabel method. Why is that?
    The calling syntax is:
    for( i=0 ; i < doc.pages.length ; ++i )
            var page = doc.pages.item(i);
            var textFrame = getByLabel(page, 'lblSection' ); //This works
            //   var textFrame = page.textFrames.findItems({ label:  'lblSection' })[0]; This does not work, returns null
            if( textFrame != null )
                textFrame.parentStory.contents = "";

    (function () {
        // Per the InDesign Scripting Guide, app.activeScript is only
        // valid when a script is directly executed from InDesign, not
        // from the ESTK, so a try/catch block is recommended to handle
        // it.
        var d;
        try {
            d = app.activeScript.parent.parent.fsName;
        } catch (e) {
            d = Folder.appPackage.parent.fsName+"/Scripts";
            return d;

  • GetDocumentBase returns null in Update 40

    The change to make getCodeBase() and getDocumentBase() return null has broken our FindinSite-CD signed applet which is out in the field on many data CDs and similar, ie running locally.  It doesn't provide any more security as our all-permissions applet can still access the same information (once it knows where it is).  The trouble is, the CD may be run from anywhere so I do not know the absolute path in advance. I have found that I can add code so that JavaScript is used to pass the current URL as a PARAM to the APPLET.  However this should not be necessary.
    Can you provide a better fix that does not break all our existing users who update to Update 25 or 40?
    I would be happy for our applet to have access restricted to its own directory or lower.
    Or for an all-permissions applet, make getCodeBase() and getDocumentBase() return the correct values.
    Please see the second link below for a further discussion.
    Bug ID: JDK-8019177 getdocument base should behave the same as getcodebase for file applets
    Oracle's Java Security Clusterfuck
    PS  There is a separate Firefox 23 issue stopping access to local Java applets - this should be fixed this week in version 24.
    Chris Cant
    PHD Computer Consultants Ltd
    http://www.phdcc.com/fiscd/

    Our company uses the above FindinSite-CD software to provide search functionality on our data CDs and we have done so successfully for many years.  These latest changes in Update 40 have now broken this vital component on our product and will cost us considerably in technical support time and replacing the discs when a fix comes out. Just an end user's perspective!

  • Code returning NULL

    T1 (Table and columns & data ) used in my example
    create table T1 (col1 number,col2 number);
    col1 col2
    1 5
    2 5
    3 5
    4 5
    11 6
    12 6
    13 6
    14 6
    CREATE OR REPLACE FUNCTION TEST (par NUMBER) RETURN VARCHAR2 IS
    l_concat VARCHAR2(32767) ;
    BEGIN
    select wm_concat(col1) into l_concat from t1 where col2=par;
    RETURN l_concat;
    END;
    select TEST(5) from dual;
    The above example always returns a NULL as opposed to (1,2,3,4);
    CREATE OR REPLACE FUNCTION TEST (par NUMBER) RETURN VARCHAR2 IS
    l_concat VARCHAR2(32767) ;
    l_str varchar2(32767);
    BEGIN
    l_str:='select wm_concat(col1) from t1 where col2=:b';
    execute immediate l_str into l_concat using par;
    RETURN l_concat;
    END;
    select TEST(5) from dual;
    This returns the correct answer .i.e. (1,2,3,4);
    My question is why my first code returning NULL? Is there any restriction using aggregate functions inside
    plsql code ?

    BluShadow wrote:
    The in paramter has the same name as one of the column . Thus the select query was not taking the filtering predicate as the in parameter col1 ,rather it was
    using the column's value for filtering each row and hence the wm_concat was not getting any row to concatenate .That's why you should use a good coding standard and perhaps prefix parameters with "p" or "p_" and local variables with "v" or "v_" etc.Smacks too much of archaic Hungarian notation. :-)
    Explicit scope definition is supported by PL/SQL. So why invent a new manual standard for scope, when there exists one already?
    SQL> create or replace procedure FooProc( empNo emp.empno%Type ) is
      2          empRow  emp%RowType;
      3  begin
      4          select
      5                  e.* into empRow
      6          from    emp e
      7          where   e.empno = FooProc.empNo;
      8 
      9          dbms_output.put_line(
    10                  'Employee '||empNo||' is '||empRow.ename||
    11                  ', and employed as '||empRow.job
    12          );
    13  end;
    14  /
    Procedure created.
    SQL>
    SQL>
    SQL> exec FooProc(7369)
    Employee 7369 is SMITH, and employed as CLERK
    PL/SQL procedure successfully completed.
    SQL> Personally, I find the v_ and p_ prefix approach quite silly - attempting to address an issue that is already solved by explicit PL/SQL scope.
    Never mind that the approach of using different prefixes, attempts to identify scope - and goes down the exact same slippery scope that Hungarian notation did. Which resulted in the death of this misguided standard, many years ago.
    Frustrates me to no end to see the exact SAME mistakes made in PL/SQL that were made a decade or more ago - where lessons learned since then are conveniently ignored when it comes to PL/SQL programming.
    It is still seems to be the Dark Ages when it comes to PL/SQL development.... :-(

  • In Portal, request.getparameter return NULL (Sample Monthcalendar)

    I used the sample monthcalendar. When i used it without integrated in portal, i can change month by month with ">>" button.
    In the JSP File, there is a call to the P_CALDATE parameter
    String l_inputDate = request.getParameter("P_CALDATE"); // Input Date.
    When i put this JSP file as an URL Portlet, i can't navigate month by month. the function request.getParameter("P_CALDATE") return NULL, but in the URL i have the parameter:
    http://hddms220.cg63.fr/servlet/page?_pageid=54,58,56&_dad=portal30&_schema=PORTAL30&P_CALDATE=2002-05-01.
    Someone have an idea
    Thanks in advanced

    I have tested the sample with JSERV, and all works fine.
    But if i wan't use OC4J/ORION to display a portlet how can i do it.
    Thanks in advanced

  • My profile was 'fixed' and I am trying to return to functionality

    I had a bug on my laptop and the system experts removed my profile.
    That got rid of all of my workspace information. I had a backup, so I started copying everything back. I am close to getting things back, but this isn't horeshoes!
    I currently get this in my console,
         at com.businessobjects.reports.sdk.requesthandler.f.a(Unknown Source)
         at com.businessobjects.reports.sdk.requesthandler.DatabaseRequestHandler.byte(Unknown Source)
         at com.businessobjects.reports.sdk.JRCCommunicationAdapter.do(Unknown Source)
         ... 35 more
    Caused by: com.businessobjects.reports.jdbinterface.common.DBException: Unexpected database connector error
         at com.crystaldecisions.reports.queryengine.driverImpl.jdbc.JDBCConnection.Open(Unknown Source)
         at com.crystaldecisions.reports.queryengine.JDBConnectionWrapper.Open(Unknown Source)
         ... 45 more
    Parms are; 800/S80/5069723
    ERROR -  detected an exception: Unexpected database connector error
         at com.crystaldecisions.reports.queryengine.Connection.t1(Unknown Source)
    My program isn't very large and it did work before. I have it below. The params are printing, so the program did read the input control file. It just can't find the database connection. I do have the log4j.properties file and it is in the correct place.
    I think I just need to redo the JDBC connection.
    Can somebody help me?
    What I need to do is re-establish or check my database connection.
    import java.io.BufferedReader;
    import java.io.ByteArrayInputStream;
    import java.io.ByteArrayOutputStream;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.InputStreamReader;
    import java.text.SimpleDateFormat;
    import javax.swing.SwingUtilities;
    import com.crystaldecisions.sdk.occa.report.application.DatabaseController;
    import com.crystaldecisions.sdk.occa.report.application.ReportClientDocument;
    import com.crystaldecisions.sdk.occa.report.exportoptions.ReportExportFormat;
    import com.crystaldecisions.sdk.occa.report.lib.*;
    import com.crystaldecisions.sdk.occa.report.data.*;
    public class checkReg {
              private static final String REPORT_NAME = "D:\\Inetpub\\ftproot\\CRegister\\CheckRegister.rpt";
              public static void launchApplication() {
              try
                   File f1 = new File("D:\\Inetpub\\ftproot\\CRegister\\CReg.jac");
                   if (f1.exists())
                   {f1.delete();
              java.io.File src = new File("D:\\Inetpub\\ftproot\\CRegister\\CReg.txt");
              java.io.File dest = new File("D:\\Inetpub\\ftproot\\CRegister\\CReg.txt".replace(".txt", ".jac"));
              src.renameTo(dest);
              File f2 = new File("D:\\Inetpub\\ftproot\\CRegister\\CReg.bak");
              if (f2.exists())
                   {f2.delete();
                   FileInputStream in = new FileInputStream("D:\\Inetpub\\ftproot\\CRegister\\CReg.jac");
                   BufferedReader br = new BufferedReader(new InputStreamReader(in));
                   String strLine;
                   String sDate;
                   float tran;
                   SimpleDateFormat formatter = new SimpleDateFormat("MMddyyyy");
                   java.util.Date date = new java.util.Date();
         // to run for the current day use this -       
                   sDate = formatter.format(date);
         // Read the file one line at a time
                 while ((strLine = br.readLine()) != null)  
                      String patternStr = ",";
                     String[] args = strLine.split(patternStr);
        // format is vendor_yyyymmdd_check_nbr.pdf
                     String EXPORT_FILE = "D:\\Appdata\\CRegister\\" + args[3] + "_" + sDate + "_" + args[4] + ".pdf";
                     String Params = args[0] + "/" + args[1] + "/" + args[4];
                     System.out.println("Parms are; " + Params);
                   try {
         //Open report.
                        ReportClientDocument reportClientDoc = new ReportClientDocument();
                        reportClientDoc.open(REPORT_NAME, 0);
         //Switch all tables on the main report.  See utility method below.
                        switch_tables(reportClientDoc.getDatabaseController());
         //We will be using the ParameterFieldController quite a bit through-out the rest of this function.
                        reportClientDoc.getDatabaseController().logon("procure","procure90");
                        com.crystaldecisions.sdk.occa.report.application.ParameterFieldController paramFieldController = reportClientDoc.getDataDefController().getParameterFieldController();
                        paramFieldController.setCurrentValue("", "cash_code", new String(args[0]));
                        paramFieldController.setCurrentValue("", "bank_code", new String(args[1]));
                        String tranValue = args[4];
                        Float tranTemp = Float.valueOf(tranValue);
                        tran = tranTemp.floatValue();
                        paramFieldController.setCurrentValue("", "tran_code", tran);
                        ByteArrayInputStream byteArrayInputStream = (ByteArrayInputStream)reportClientDoc.getPrintOutputController().export(ReportExportFormat.PDF);
         //Release report.
                        reportClientDoc.close();
         //Use the Java I/O libraries to write the exported content to the file system.
                        byte byteArray[] = new byte[byteArrayInputStream.available()];
         //Create a new file that will contain the exported result.
                        File file = new File(EXPORT_FILE);
                        FileOutputStream fileOutputStream = new FileOutputStream(file);
                        ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(byteArrayInputStream.available());
                        int x = byteArrayInputStream.read(byteArray, 0, byteArrayInputStream.available());
                        byteArrayOutputStream.write(byteArray, 0, x);
                        byteArrayOutputStream.writeTo(fileOutputStream);
         //Close streams.
                        byteArrayInputStream.close();
                        byteArrayOutputStream.close();
                        fileOutputStream.close();
                        System.out.println("Successfully exported report to " + EXPORT_FILE);
                   catch(ReportSDKException ex) {
                        ex.printStackTrace();
                  System.out.println("The exporting of reports has finished!");
                   br.close();
                   in.close();
                   java.io.File src2 = new File("D:\\Inetpub\\ftproot\\CRegister\\CReg.jac");
                   java.io.File dest2 = new File("D:\\Inetpub\\ftproot\\CRegister\\CReg.jac".replace(".jac", ".bak"));
                   catch(Exception ex) {
                        System.out.println(ex);               
              private static Object String(String string) {
                   // TODO Auto-generated method stub
                   return null;
               * Sample utility method for switching the database connection properties of all tables accessible from a databaseController
               * (i.e., could be a main report database controller, or a subreport's database controller) from one database to another.
              private static void switch_tables(DatabaseController databaseController) throws ReportSDKException {
                   //Declare the new connection properties that report's datasource will be switched to.
                   //NOTE: These are specific to using JDBC against a particular MS SQL Server database.  Be sure to use the
                   //DisplayConnectionInfo sample to determine what your own connection properties need to be set to.
                   final String TABLE_NAME_QUALIFIER = "xtreme.dbo.";
              //     final String DBUSERNAME = "procure";
              //     final String DBPASSWORD = "procure90";
                   final String SERVERNAME = "aix-dblaw2.ochsner.org";
                   final String CONNECTION_STRING = "Use JDBC=b(true);Connection URL=s(jdbc:oracle:thin:@aix-dblaw2.ochsner.org:1521:lawocfp);" +
                                                            "Database Class Name=s(jdbc:oracle:thin);Server=s(aix-dblaw2.ochsner.org);" +
                                                            "User ID=s(procure);Password=;Database=s(procure90);Trusted_Connection=b(false);" +
                                                            "JDBC Connection String=s(!jdbc:oracle:thin:@aix-dblaw2.ochsner.org:1521" +
                                                            "DatabaseName={lawocfp};user={procure};password={procure90}!)";
                   final String DATABASE_NAME = "lawocfp";
                   final String URI = "!jdbc:oracle:thin:@aix-dblaw2.ochsner.org:1521;DatabaseName={lawocfp};user={procure};password={procure90}!";
                   final String DATABASE_DLL = "crdb_jdbc.dll";
                   //Obtain collection of tables from this database controller.
                   Tables tables = databaseController.getDatabase().getTables();
                   //Set the datasource for all main report tables.
                   for (int i = 0; i < tables.size(); i++) {
                        ITable table = tables.getTable(i);
                        //Keep existing name and alias.
                        table.setName(table.getName());
                        table.setAlias(table.getAlias());
                        //Change properties that are different from the original datasource.
                        table.setQualifiedName(TABLE_NAME_QUALIFIER + table.getName());
                        //Change connection information properties.
                        IConnectionInfo connectionInfo = table.getConnectionInfo();
                        //Set new table connection property attributes.
                        PropertyBag propertyBag = new PropertyBag();
                        //Overwrite any existing properties with updated values.
                        propertyBag.put("Trusted_Connection", "false");
                        propertyBag.put("Server Name", SERVERNAME); //Optional property.
                        propertyBag.put("Connection String", CONNECTION_STRING);
                        propertyBag.put("Database Name", DATABASE_NAME);
                        propertyBag.put("Server Type", "JDBC (JNDI)");
                        propertyBag.put("URI", URI);
                        propertyBag.put("Use JDBC", "true");
                        propertyBag.put("Database DLL", DATABASE_DLL);
                        connectionInfo.setAttributes(propertyBag);
                        //Set database username and password.
                        //NOTE: Even if these the username and password properties don't change when switching databases, the
                        //database password is *not* saved in the report and must be set at runtime if the database is secured. 
                        connectionInfo.setUserName("procure");
                        connectionInfo.setPassword("procure90");
                        connectionInfo.setKind(ConnectionInfoKind.DBFile);
                        table.setConnectionInfo(connectionInfo);
                        //Update old table in the report with the new table.
                        databaseController.setTableLocation(table, tables.getTable(i));
              public static void main(String [] args) {
                   SwingUtilities.invokeLater(new Runnable() {
                        public void run() {
                             //Hand-off to worker function to start application.
                             launchApplication();

    An update -
    The libraries appear to all be in tact, now.
    The error I am getting,
    Parms are; 800/S80/5069660
    ERROR -  detected an exception: Unexpected database connector error
    is a connection issue.
    Any ideas??

  • FrameGrabbingControl returns null

    In my code i want to grab a frame from a video and displey it in another window.But the problem is that " FrameGrabbingControl fgc =(FrameGrabbingControl) player.getControl("javax.media.control.FrameGrabbingControl");" returns null.Please help me by pionting out the error. Thanks in advance.
    import java.applet.Applet;
    import java.awt.*;
    import java.awt.event.*;
    import java.lang.Thread;
    import java.util.*;
    import java.lang.*;
    import java.lang.String;
    import java.net.URL;
    import java.net.MalformedURLException;
    import java.io.IOException;
    import java.util.Properties;
    import javax.media.*;
    import java.applet.*;
    import javax.swing. *;
    import javax.swing.border. *;
    import javax.media.datasink. *;
    import javax.media.format. *;
    import javax.media.protocol. *;
    import javax.media.util. *;
    import javax.media.control. *;
    import java.awt.image. *;
    import com.sun.image.codec.jpeg. *;
    import com.sun.media.protocol.vfw.VFWCapture;
    import java.io.*;
    import javax.media.control.FrameGrabbingControl;
    //import com.sun.media.util.JMFSecurity;
    * This is a Java Applet that demonstrates how to create a simple
    * media player with a media event listener. It will play the
    * media clip right away and continuously loop.
    * <!-- Sample HTML
    * <applet code=SimplePlayerApplet width=320 height=300>
    * <param name=file value="sun.avi">
    * </applet>
    * -->
    public class grabframe extends Applet implements ControllerListener,ActionListener
    static int shotCounter = 1;
    Button button;
    // media Player
    Player player = null;
    // component in which video is playing
    Component visualComponent = null;
    // controls gain, position, start, stop
    Component controlComponent = null;
    // displays progress during download
    Component progressBar = null;
    boolean firstTime = true;
    long CachingSize = 0L;
    Panel panel = null;
    int controlPanelHeight = 0;
    int videoWidth = 0;
    int videoHeight = 0;
    * Read the applet file parameter and create the media
    * player.
    public void init()
    setLayout(new BorderLayout());
         setBackground(Color.white);
         panel = new Panel();
         //panel.setLayout( null );
         add(panel,BorderLayout.SOUTH);
         panel.setBounds(0, 0, 320, 240);
    button=new Button("GRAB FRAME");
              panel.add(button);
              button.addActionListener(this);
         // input file name from html param
         String mediaFile = null;
         // URL for our media file
         MediaLocator mrl = null;//MediaLocator describes the location of the media content while
         URL url = null;//URL specify the location of the media
         // Get the media filename info.
         // The applet tag should contain the path to the
         // source media file, relative to the html page.
         if ((mediaFile = getParameter("file")) == null)
         Fatal("Invalid media file parameter");
    //System.out.println("mediafile :"+mediaFile);
         try
         url = new URL(getDocumentBase(), mediaFile);//return a new URL using an existing URL as reference
    //     System.out.println("url :"+url);
                   mediaFile = url.toExternalForm();//return a string representation of the URL
    //     System.out.println("mediafile :"+mediaFile);
              catch (MalformedURLException mue)
         try
         // Create a media locator from the file name
         if ((mrl = new MediaLocator(mediaFile)) == null)
              Fatal("Can't build URL for " + mediaFile);
         // Create an instance of a player for this media
         try
              player = Manager.createPlayer(mrl);
                   catch (NoPlayerException e)
              System.out.println(e);
              Fatal("Could not create player for " + mrl);
    /* catch (CannotRealizeException e)
              System.out.println(e);
              Fatal("Could not create player for " + mrl);
         // Add ourselves as a listener for a player's events
         player.addControllerListener(this);
              catch (MalformedURLException e)
         Fatal("Invalid media file URL!");
              catch (IOException e)
         Fatal("IO exception creating player for " + mrl);
         // This applet assumes that its start() calls
         // player.start(). This causes the player to become
         // realized. Once realized, the applet will get
         // the visual and control panel components and add
         // them to the Applet. These components are not added
         // during init() because they are long operations that
         // would make us appear unresposive to the user.
    }//end of init
    * Start media file playback. This function is called the
    * first time that the Applet runs and every
    * time the user re-enters the page.
    public void start()
         //$ System.out.println("Applet.start() is called");
    // Call start() to prefetch and start the player.
    if (player != null)
         player.start();
    * Stop media file playback and release resource before
    * leaving the page.
    public void stop()
         //$ System.out.println("Applet.stop() is called");
    if (player != null)
    player.stop();
    player.deallocate();
    public void destroy()
         //$ System.out.println("Applet.destroy() is called");
         player.close();
    * This controllerUpdate function must be defined in order to
    * implement a ControllerListener interface. This
    * function will be called whenever there is a media event
    public synchronized void controllerUpdate(ControllerEvent event)
         // If we're getting messages from a dead player,
         // just leave
         if (player == null)
         return;
         // When the player is Realized, get the visual
         // and control components and add them to the Applet
         if (event instanceof RealizeCompleteEvent)
         if (progressBar != null)
              panel.remove(progressBar);
              progressBar = null;
         int width = 320;
         int height = 0;
         if (controlComponent == null)
              if (( controlComponent = player.getControlPanelComponent()) != null)
                        //controlPanelComponent provides the default user interface for controlling the player
              controlPanelHeight = controlComponent.getPreferredSize().height;
              panel.add(controlComponent);
              height += controlPanelHeight;
         if (visualComponent == null)
              if (( visualComponent = player.getVisualComponent())!= null)
                        //visualComponent provides display component(where the visual media is recorded) of the player
              panel.add(visualComponent,BorderLayout.CENTER);
              Dimension videoSize = visualComponent.getPreferredSize();
              videoWidth = videoSize.width;
              videoHeight = videoSize.height;
              width = videoWidth;
              height += videoHeight;
              visualComponent.setBounds(0, 0, videoWidth, videoHeight);
         panel.setBounds(0, 0, width, height);
         if (controlComponent != null)
              controlComponent.setBounds(0, videoHeight,width, controlPanelHeight);
              controlComponent.invalidate();
         } //end of RearizedCompleteEvent
              else if (event instanceof CachingControlEvent)
         if (player.getState() > Controller.Realizing)
              return;
         // Put a progress bar up when downloading starts,
         // take it down when downloading ends.
         CachingControlEvent e = (CachingControlEvent) event;
         CachingControl cc = e.getCachingControl();
         // Add the bar if not already there ...
         if (progressBar == null)
         if ((progressBar = cc.getControlComponent()) != null)
              panel.add(progressBar);
              panel.setSize(progressBar.getPreferredSize());
              validate();
         } //end of CashingControlEvent
                   else if (event instanceof EndOfMediaEvent)
         // We've reached the end of the media; rewind and
         // start over
         player.setMediaTime(new Time(0));
         player.start();
         } //end of EndOfMediaEvent
                   else if (event instanceof ControllerErrorEvent)
         // Tell TypicalPlayerApplet.start() to call it a day
         player = null;
         Fatal(((ControllerErrorEvent)event).getMessage());
    }//end of ControllerErrorEvent
                   else if (event instanceof ControllerClosedEvent)
         panel.removeAll();
         }//end of ControllerClosedEnent
    }//end of controller update
    void Fatal (String s)
         // Applications will make various choices about what
         // to do here. We print a message
         System.err.println("FATAL ERROR: " + s);
         throw new Error(s); // Invoke the uncaught exception
                   // handler System.exit() is another
                   // choice.
    public void actionPerformed(ActionEvent ae)
    Dimension imageSize = null;
    String str=ae.getActionCommand();
    if(str.equals ("GRAB FRAME"))
    Image photo = grabFrameImage();
         if (photo != null)
    MySnapshot snapshot = new MySnapshot(photo, new Dimension(imageSize));
         else
    System.err.println("Errore : Impossibile grabbare il frame");
    repaint();
    * Grabba un frame dalla webcam @restituisce il frame in un buffer
    public Buffer grabFrameBuffer()
    if (player != null)
         FrameGrabbingControl fgc =(FrameGrabbingControl) player.getControl("javax.media.control.FrameGrabbingControl");
    System.out.println(fgc );
         if (fgc != null)
    return (fgc.grabFrame());
         else
    System.err.println("Errore : FrameGrabbingControl non disponibile");
    return (null);
    else
         System.err.println("Errore nel Player");
    return (null);
    * Converte il buffer frame in un'immagine
    public Image grabFrameImage()
    Buffer buffer = grabFrameBuffer();
    if (buffer != null)
    BufferToImage btoi = new BufferToImage((VideoFormat) buffer.getFormat());
    if (btoi != null)
    Image image = btoi.createImage(buffer);
    if (image != null)
    return (image);
              else
    System.err.println("Errore di conversione Buffer - BufferToImage");
    return (null);
         else
    System.err.println("Errore nella creazione di BufferToImage");
    return (null);
         else
    System.out.println("Errore: buffer vuoto");
    return (null);
    class MySnapshot extends JFrame
    protected Image photo = null;
    protected int shotNumber;
         public MySnapshot(Image grabbedFrame, Dimension imageSize)
    super();
    shotNumber = shotCounter++;
    setTitle("Immagine" + shotNumber);
    photo = grabbedFrame;
    setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
    int imageHeight = photo.getWidth(this);
    int imageWidth = photo.getHeight(this);
    setSize(imageSize.width, imageSize.height);
    final FileDialog saveDialog = new FileDialog(this,"Salva immagine", FileDialog.SAVE);
    final JFrame thisCopy = this;
    saveDialog.setFile("Immagine" + shotNumber);
    addWindowListener(new WindowAdapter() {
    public void windowClosing(WindowEvent e) {
    saveDialog.show();
    String filename = saveDialog.getFile();
    if (filename != null)
    if (saveJPEG(filename))
    JOptionPane.showMessageDialog(thisCopy,"Salvata immagine " + filename);
    setVisible(false);
    dispose();
                             else
    JOptionPane.showMessageDialog(thisCopy,"Errore nel salvataggio di " + filename);
                             else
    setVisible(false);
    dispose();
    setVisible(true);
    public void paint(Graphics g)
    g.drawImage(photo, 0, 0, getWidth(), getHeight(), this);
    public boolean saveJPEG(String filename)
    boolean saved = false;
    BufferedImage bi = new BufferedImage(photo.getWidth(null), photo.getHeight(null), BufferedImage.TYPE_INT_RGB);
    Graphics2D g2 = bi.createGraphics();
    g2.drawImage(photo, null, null);
    FileOutputStream out = null;
    try
    out = new FileOutputStream(filename);
    JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
    JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(bi);
    param.setQuality(1.0f, false);
    encoder.setJPEGEncodeParam(param);
    encoder.encode(bi);
    out.close();
    saved = true;
         catch (Exception ex)
    System.out.println("Errore salvataggio JPEG: "+ ex.getMessage());
    return (saved);
    }//end of class SimplePlayerApplet

    Hmm....
    some of that looks very familiar to me :-)
    http://forum.java.sun.com/thread.jspa?forumID=28&threadID=570463
    1. post your code wrapped in code tags and it'll display it nicely.
    2. post to the Java Media Framework topic,
    I haven't tried JMF within an applet.
    Have you tried getting it working in an application first ?
    That should simplify your debugging to start with.
    I suspect the Player hasn't started yet, or isn't in a realised state.
    regards,
    Owen

  • User Exists but APEX_UTL.GET_USER_ID returns null

    Hi,
    I am fairly new to APEX especially the API, I have created a user via the workspace admin pages (application is using standard apex authentication scheme). I want a page to open with data shown restricted by an attribute that has been set for the user. The page computation code is simply:
    begin
    return apex_util.get_attribute(p_username => 'JONES', p_attribute_number => 2);
    end;
    (hard coding added for debug, does not work with :APP_USER):
    However this is always returning null.
    If I do this in SQL Developer:
    apex_util.get_user_id('JONES');
    I get null
    If I do this :
    select *
    from APEX_WORKSPACE_APEX_USERS
    where user_name = 'JONES'
    I get data.
    What am I doing wrong?? The JONES user was created via the APEX system not SQL.
    Thanks in advance
    Chris

    Chris,
    the point is that you can't get values from some APEX functions running it from SQL Developer or some other tool, you can only see it in runtime of your APEX application (because of APEX session).
    Here's example:
    [http://apex.oracle.com/pls/apex/f?p=43478:3]
    User: user
    Password: xxx
    apex_util.set_attribute is not a function and you can't run it from SQL, only PL/SQL...
    On the other hand, you can see values from SQL developer (without APEX session) through APEX views...
    Br,
    Marko

  • How to use getRelativePath() with browseForOpen()? It returns null

    It's quite simple:
    fTargetFile:File = File.applicationDirectory.resolvePath("assets");
    fRootFile:File = File.applicationDirectory.resolvePath("assets");
    fTargetFile.addEventListener(Event.SELECT,onSelect)
    fTargetFile.browseForOpen("test"); <-- here I open a file in "/assets/images/test.jpg"
    function onSelect(e:Event):void
        trace(fRootFile.getRelativePath(fTargetFile));  <-- this returns null
    Every single "tutorial" in the web - along with Adobe's documentation - gracefully uses resolvePath to explicitly point to the file objects, thereby bypassing the actual use case. getRelativePath indeed works with resolvePath, but using resolvePath means I've already known where the file is located in the first place, rendering getRelativePath actually useless
    tracing the nativePath property of both objects returns the correct path.
    What I'm trying to do is letting the user choose a file within the "assets" directory. The file can be from any folder so long as they're under the "assets", and once user chooses a file, display the relative path from "assets" to the chosen file.
    So, in the example above, I expect "images/test.jpg" to be returned, but it returns nothing
    Do I have to do some wizardry before getRelativePath works?

    This post is rather old, so I may not be able to help the original author of this topic, but as I found this thread, when searching for a solution for this problem myself, I might be able to help someone else.
    I found the following solution:
    function onSelect(e:Event):void
      var f1:File = (new File()).resolvePath(e.currentTarget.nativePath);
      var f2:File = (new File()).resolvePath(File.applicationDirectory.nativePath);
      trace(f2.getRelativePath(f1, true));

  • Execute oracle stored procedure from C# always returns null

    Hi,
    I'm trying to execute a stored procedure on oracle 9i. I'm using .Net OracleClient provider.
    Apparently, I can execute the stored procedure, but it always returns null as a result (actually all the sp's I have there returns null)! I can execute any text statement against the database successfully, and also I can execute the stored procedure using Toad.
    This is not the first time for me to call an oracle stored procedure, but this really is giving me a hard time! Can anyone help please?
    Below are the SP, and the code used from .Net to call it, if that can help.
    Oracle SP:
    CREATE OR REPLACE PROCEDURE APIECARE.CHECK_EXISTENCE(l_number IN NUMBER) AS
    v_status VARCHAR2(5) := NULL;
    BEGIN
    BEGIN
    SELECT CHECK_NO_EXISTENCE(to_char(l_number))
    INTO v_status
    FROM DUAL;
    EXCEPTION WHEN OTHERS THEN
    v_status := NULL;
    END;
    DBMS_OUTPUT.PUT_LINE(v_status);
    END CHECK_CONTRNO_EXISTENCE;
    C# Code:
    string connStr = "Data Source=datasource;Persist Security Info=True;User ID=user;Password=pass;Unicode=True";
    OracleConnection conn = new OracleConnection(connStr);
    OracleParameter param1 = new OracleParameter();
    param1.ParameterName = "v_status";
    param1.OracleType = OracleType.VarChar;
    param1.Size = 5;
    param1.Direction = ParameterDirection.Input;
    OracleParameter param2 = new OracleParameter();
    param2.ParameterName = "l_number";
    param2.OracleType = OracleType.Number;
    param2.Direction = ParameterDirection.Input;
    param2.Value = 006550249;
    OracleParameter[] oraParams = new OracleParameter[] { param1, param2 };
    OracleCommand cmd = new OracleCommand("CHECK_EXISTENCE", conn);
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Parameters.AddRange(oraParams);
    conn.Open();
    object result = cmd.ExecuteScalar();
    conn.Close();

    Hi,
    Does that actually execute? You're passing two parameters to a procedure that only takews 1 and get no error?
    Your stored procedure doesnt return anything and has no output parameters, what are you expecting to be returned exactly?
    If you're trying to access V_STATUS you'll need to declare that as either an output parameter of the procedure, or return value of the function, and also access it via accessing Param.Value, not as the result of ExecuteScalar.
    See if this helps.
    Cheers,
    Greg
    create or replace function myfunc(myinvar in varchar2, myoutvar out varchar2) return varchar2
    is
    retval varchar2(50);
    begin
    myoutvar := myinvar;
    retval := 'the return value';
    return retval;
    end;
    using System;
    using System.Data;
    using Oracle.DataAccess.Client;
    public class odpfuncparams
         public static void Main()
          OracleConnection con = new OracleConnection("user id=scott;password=tiger;data source=orcl");
          con.Open();
          OracleCommand cmd = new OracleCommand("myfunc", con);
          cmd.CommandType = CommandType.StoredProcedure;
          OracleParameter retval = new OracleParameter("retval",OracleDbType.Varchar2,50);
          retval.Direction = ParameterDirection.ReturnValue;
          cmd.Parameters.Add(retval);
          OracleParameter inval = new OracleParameter("inval",OracleDbType.Varchar2);
          inval.Direction = ParameterDirection.Input; 
          inval.Value="hello world";
          cmd.Parameters.Add(inval);
          OracleParameter outval = new OracleParameter("outval",OracleDbType.Varchar2,50);
          outval.Direction = ParameterDirection.Output;
          cmd.Parameters.Add(outval);
          cmd.ExecuteNonQuery();
          Console.WriteLine("return value is {0}, out value is {1}",retval.Value,outval.Value);
          con.Close();
    }

  • Select query on table rcv_lots_interface is always returning null

    Hi ,
    I need a help on the below issue.
    The issue is after creating PO in Oracle 11i I receive it in MSCA application.
    When we receive it at that point data gets inserted in the table " rcv_transactions_interface " and we have written a trigger on it.
    From the trigger on table " rcv_transactions_interface " we are calling a package and in the package we have select query on "rcv_lots_interface."
    But the select query is always returning null even though we are passing the correct "interface_transaction_id " and also after the "Receiving Transaction Processor" is executed i can see data in the table " RCV_LOT_TRANSACTIONS " for the same transaction.
    Below is the sample code i am using.
    CREATE OR REPLACE TRIGGER inv.RCV_TRAN_TRIGGER
    AFTER UPDATE
    ON po.rcv_transactions_interface
    FOR EACH ROW
    WHEN (NEW.processing_status_code='PENDING'
    AND NEW.destination_type_code IN ('INVENTORY','RECEIVING')
    AND NEW.mobile_txn = 'Y')
    DECLARE
    PRAGMA AUTONOMOUS_TRANSACTION;
    v_user_id NUMBER;
    v_interface_transaction_id NUMBER;
    v_organization_id NUMBER;
    v_item_id NUMBER;
    v_quantity NUMBER;
    v_resp_id NUMBER;
    v_mobile_txn VARCHAR2(5);
    v_shipment_header_id NUMBER;
    v_bill_of_lading VARCHAR2(100);
    v_group_id NUMBER;
    v_header_interface_id NUMBER;
    BEGIN
    v_interface_transaction_id := :NEW.interface_transaction_id;
    v_organization_id := :NEW.to_organization_id;
    v_user_id := :NEW.created_by;
    v_item_id := :NEW.item_id;
    v_quantity := :NEW.quantity;
    v_resp_id :=fnd_profile.VALUE('RESP_ID');
    v_transaction_type := :NEW.transaction_type;
    v_mobile_txn := :NEW.mobile_txn;
    v_bill_of_lading := :NEW.bill_of_lading;
    v_group_id := :NEW.group_id;
    v_header_interface_id := :NEW.HEADER_INTERFACE_ID;
    INV.INV_RCV_TRX_PKG.INV_RCV_LABEL_GEN_PRC( v_user_id,
    v_interface_transaction_id,
    v_item_id,
    v_quantity,
    v_organization_id,
    v_resp_id,
    v_shipment_header_id,
    v_bill_of_lading,
    v_header_interface_id,
    v_group_id);
    END;
    CREATE OR REPLACE PACKAGE BODY INV.INV_RCV_TRX_PKG
    AS
    PROCEDURE INV_RCV_LABEL_GEN_PRC( p_user_id IN NUMBER,
    p_interface_transaction_id IN NUMBER,
    p_item_id IN NUMBER,
    p_quantity IN NUMBER,
    p_organization_id IN NUMBER,
    p_resp_id IN NUMBER,
    p_shipment_header_id IN NUMBER,
    p_bill_of_lading IN VARCHAR2,
    p_header_interface_id IN NUMBER ,
    p_group_id IN NUMBER
    IS
    v_user_id NUMBER;
    v_print BOOLEAN;
    v_resp_id NUMBER;
    v_resp_appl_id NUMBER;
    v_lot_num VARCHAR2(50);
    BEGIN
    BEGIN
    SELECT application_id
    INTO v_resp_appl_id
    FROM apps.fnd_responsibility_tl frt
    WHERE responsibility_id=p_resp_id;
    END;
    apps.fnd_global.apps_initialize(p_user_id, p_resp_id, v_resp_appl_id);
    BEGIN
    SELECT rli.lot_num , rli.expiration_date
    INTO v_lot_num ,
    v_expiration_date
    FROM apps.rcv_lots_interface rli
    WHERE rli.interface_transaction_id = p_interface_transaction_id ;
    EXCEPTION
    WHEN OTHERS THEN
    v_lot_num :=NULL;
    v_expiration_date :=NULL;
    apps.fnd_file.put_line(fnd_file.log,'Exception while deriving LOT Number ######### '||p_interface_transaction_id||'------'||SQLERRM);
    END;
    END;
    Need your help to understand why the below query is always returning null and what is the solution for it ?
    SELECT rli.lot_num , rli.expiration_date
    FROM apps.rcv_lots_interface rli
    WHERE rli.interface_transaction_id = p_interface_transaction_id ;
    Thanks
    Jaydeep
    Edited by: user10454886 on Mar 25, 2013 6:31 AM
    Hi ,
    I need a solution to this issue at the earliest.
    Appreciate all of your help
    Thanks
    Jaydeep

    Centinul wrote:
    There are a lot of bugs listed in Metalink with respect to wrong results and function-based indexes.
    Here are a few:
    Bug 4028186 Wrong results if function based index exists
    Bug 4717546 Wrong results / poor plan when function based index exists
    Bug 5092688 Wrong results if function based index exists
    Based on reviewing them the workarounds range from dropping the index to setting "_disable_function_based_index" to TRUE.Facinating. It seems to me that if you use the undocumented intitialization parameter you might just as well drop the FBIs too.
    Another hazard of FBIs is the Law of Unintended Consequences. 2 years ago we tried to use one to speed up a query in a PL/SQL package. Worked OK for that purpose, but an unrelated loader on the affected table ran and rand but never finished until the FBI was dropped.

  • MDX Query using BottomCount to limit Median calculation returns null

    I'm building a new cube that includes some person age values that aren't useful when summed, but are
    useful when the median is determined. The measure group that contains the measure for the age has a 1-1 relationship with a dimension in the cube because both use the same table as the source. This is important because I use the key attribute of the dimension
    as the set expression in the Median function to prevent any summation before the median is found. Here is the code for the original median calculation:
    MEMBER Measures.[Median Age] AS
    MEDIAN(
    [Placement Dimension].[Id Removal Episode Fact].Members,
    [Measures].[Age At Removal Months]
    This median naturally represents the half-way point in the series of values. My analysts have also requested
    median-type values at the quarter and three-quarter points in the same series. I've been able to accomplish this for the three-quarter point by nesting the TopCount function in the set expression of the Median function to limit the set to the last half of
    the records and then find the median point like this:
    MEMBER Measures.[75th Percentile] AS
    MEDIAN(
    TOPCOUNT(
    [Placement Dimension].[Id Removal Episode Fact].MEMBERS
    ,Measures.[Episode Count] / 2
    ,Measures.[Age At Removal Months]
    ,Measures.[Age At Removal Months]
    However, my attempt to use the BottomCount function in the same way as TopCount to find the quarter point
    in the whole data set by limiting the calculation's set to the first half of the data always returns null. Here is how I've formed the code:
    MEMBER Measures.[25th Percentile] AS
    MEDIAN(
    BOTTOMCOUNT(
    [Placement Dimension].[Id Removal Episode Fact].MEMBERS
    ,Measures.[Episode Count] / 2
    ,Measures.[Age At Removal Months]
    ,Measures.[Age At Removal Months]
    And here is the query that returns the values:
    SELECT
    Measures.[Episode Count]
    ,Measures.[Median Age]
    ,Measures.[25th Percentile]
    ,Measures.[75th Percentile]
    } ON 0
    ,[Date Begin].[Calendar Hierarchy].Year.&[2011]:[Date Begin].[Calendar Hierarchy].Year.&[2014] ON 1
    FROM [POC Cube]
    WHERE
    [Age at Removal Mos].[Age in Years List].[Age Year].&[0]:[Age at Removal Mos].[Age in Years List].[Age Year].&[5]
    I don't know why the end result is always null. I don't have any null values in the data for this measure, and I know what values I should be seeing because I've found the median records manually in results from a SQL Server query. I've tried using TopCount
    and multiplying Measures.[Age At Removal Months] in the TopCount function by -1 to workaround the descending sort, but I still get nulls. I've also tried separating these queries out so the quarter point and three-quarter point calculations aren't run together,
    but I still get nulls for the quarter point calculation.
    I'm open to any help fixing this situation by modifying my current code or by using alternate methods, but the end result has to be dynamic enough to be used as a calculation in the cube. Thanks!

    The links might helps.
    http://technet.microsoft.com/en-us/library/ms144864.aspx
    http://www.mssqltips.com/sqlservertip/3034/sql-server-analysis-services-ssas-2012-top-and-bottom-functions/
    http://www.sqlservercentral.com/blogs/bradleyschacht/2012/03/12/mdx-functions-bottomcount/

  • Output of value returned from function in SELECT statement ??

    Hi
    I have created the below function
    create or replace
    FUNCTION jc_test
    RETURN VARCHAR2
    IS myrec VARCHAR2(270);
    BEGIN
    SELECT RPAD('*',270,'*')
    INTO myrec
    FROM DUAL ;
    RETURN myrec;
    END ;
    and I executed the SELECT statement in Oracle SQL developer as a script
    select
    LENGTH(jc_test()) len
    *,jc_test() rec*
    from dual ;
    I get exact output as below
    LEN REC
    270 ******************************************************************************************************************************************************************************************************************************************************************************
    So here LEN is correctly shown as 270 characters but when I see the astrisk's (also appended with spaces ) its total length is 4000 characters
    Can anyone give their thoughts on this.
    Its fine if I run as normal, i mean not as a script.
    Regards
    jc
    Edited by: JC on Jun 16, 2011 11:25 AM

    Hi,
    So here LEN is correctly shown as 270 charactersYes, correct
    but when I see the astrisk's (also appended with spaces ) its total length is 4000 charactersNo buts. It is not padded. That is just how it is displayed by your tool. In SQL*Plus this is controlled by LINESIZE and COLUMN
    SQL> create or replace function dummy return varchar2 as begin return null; end;
      2  /
    Function created.
    SQL> select dummy from dual;
    D
    X
    SQL> select dummy() from dual;
    DUMMY()
    SQL> col "dummy()" for a10
    SQL> select dummy() from dual;
    DUMMY()
    SQL>P.S: It is a really bad idea to create your own wrapper functions, built-in functions. Hopefully you are not really doing that?
    Regards
    Peter

  • Java 7 TitledBorder getTitleColor returns null

    With java 1.7.0_03, the method getTitleColor() in class javax.swing.border.TitledBorder returns null. It didn't with java 1.5 or 1.6. Is this change in functionality a bug? If not, is the best way to handle it really to go through my code and add 'UIManager.getColor("TitledBorder.titleColor")' everywhere getTitleColor() returns null? The UIManager call appears to be the code Oracle took out of TitledBorder in java 7.
    Thanks,
    Mike

    The following code returned an object in java 1.5 and 1.6, but in 1.7 it returns null.
    package test;
    public class MyTitleColor{
    public static void main(String[] args){
    System.out.println(new javax.swing.border.TitledBorder("new").getTitleColor());
    The output in 1.5 and 1.6 is:
    sun.swing.PrintColorUIResource[r=51,g=51,b=51]
    but in 1.7 it is:
    null
    I'm pretty sure this is a regression, so it looks like my next stop is the java bug reporting maze.

Maybe you are looking for

  • I'm in need of help deciding which power setup to use with new MBP

    Hello all, So - after using an original 1.83 MBP for many years w/Aperture... I've recently acquired a new MBP! and initially I had the power setup for better battery life... and often found myself wondering, "hmmm...considering this thing has way mo

  • Does anyone else have pixelating poor video streaming on iPad 2?

    Hi I was wondering if anyone else has poor pixelating video streaming on iPad 2? Anytime I try to watch a video with much movement like any type of sports, like baseball and basketball the quality is poor with a lot of pixelating and blurry video. Th

  • EL for a specific page in a Navigation Model with a Pages Query

    In WebCenter Portal: Spaces we are using the Default Navigation Model, which includes a Pages Query which shows all the accessible pages for the current space. How do I create an EL Expresion that allows me to perform navigation from within a page? <

  • Database link works for OS user "oracle" but not for other clients

    My DBA connects as user1 to db1 and successfully queries over database link db2. [oracle@linux19 ODA]$ sqlplus user1/****@db1 SQL*Plus: Release 11.2.0.3.0 Production on Fri Apr 12 07:39:49 2013 Copyright (c) 1982, 2011, Oracle.  All rights reserved.

  • Strip xmlroot?

    Hi there, I was wondering what is the correct way to strip the xmlroot element fron an incoming document? I'm running across problems involving multiple incorrect definitions of this element when implementing result sets for queries on my data so I t