Array store exception -- JNI

Hi,
I am trying to return a string array in the native function to java and i get the follwing error when i run the java class file
Exception in thread "main" java.lang.ArrayStoreException
at ArrayHandler.returnArray(Native Method)
at ArrayHandler.main(ArrayHandler.java:10)
My java and C code are pasted below
public class ArrayHandler {
private static native String[] returnArray();
static{
System.loadLibrary("Msgimpl");
public static void main(String args[]) {
ArrayHandler ah= new ArrayHandler();
String[] ar = ah.returnArray();
for (int i=0; i<5; i++) {
System.out.println("array element"+i+"=" + ar);
#define WIN32WINNT 0x0400
#include <windows.h>
#include <jni.h>
#include <wincrypt.h>
#define MY_ENCODING_TYPE (PKCS_7_ASN_ENCODING | X509_ASN_ENCODING)
#include "ArrayHandler.h"
BOOL APIENTRY DllMain(HANDLE hModule,
DWORD dwReason, void** lpReserved) {
return TRUE;
JNIEXPORT jobjectArray JNICALL
Java_ArrayHandler_returnArray(JNIEnv *env, jobject obj){
jobjectArray ret;
int i;
char *message[5]= {"first",
     "second",
     "third",
     "fourth",
     "fifth"};
     jclass intArrCls = (*env)->FindClass(env, "[Ljava/lang/String;");
     if (intArrCls == NULL) {
     return NULL; /* exception thrown */
ret=(jobjectArray)(*env)->NewObjectArray(env,5,intArrCls,(*env)->NewStringUTF(env,""));
if (ret == NULL) {
          return NULL; /* out of memory error thrown */
for(i=0;i<5;i++) {
(*env)->SetObjectArrayElement(env,ret,i,(*env)->NewStringUTF(env,message[i]));
return(ret);

I found out the mistake
jclass intArrCls = (*env)->FindClass(env, "[Ljava/lang/String;"); should have been
jclass intArrCls = (*env)->FindClass(env, "Ljava/lang/String;");
                                                                                                                                                                                                                                                                                                                                                               

Similar Messages

  • Does anyone know when infinity blade 2 will be on any other app store except the US? south africa to be specific...

    does anyone know when infinity blade 2 will be on any other app store except the US? south africa to be specific...

    Apple Support Communities Use Agreement
    2. Submissions
    Stay on topic. Apple Support Communities is here to help people use Apple products and technologies more effectively. Unless otherwise noted, do not add Submissions about nontechnical topics, including:
    Speculations or rumors about unannounced products.
    Discussions of Apple policies or procedures or speculation on Apple decisions.

  • Error: Non-array passed to JNI array operations

    Can anyone see what I am doing wrong? I am trying to go through the array of objects example in the online JNI text book "The Java Native Interface Programmer's Guide and Specification" by Sheng Liang. The book and pertinent chapter can be found here:
    http://java.sun.com/docs/books/jni/html/objtypes.html#27791
    The error I received on running the program with the -Xcheck:jni switch is this:
    FATAL ERROR in native method: Non-array passed to JNI array operations
         at petes.JNI.ObjectArrayTest.initInt2DArray(Native Method)
         at petes.JNI.ObjectArrayTest.main(ObjectArrayTest.java:14)Without the xcheck switch, I get a huge error log file that I can reproduce here if needed.
    My c code with #ifdef _Debug statements removed for readability is listed below.  The location of the error (I believe) is marked:
    #include <jni.h>
    #include <stdio.h>
    #include "petes_JNI_ObjectArrayTest.h"
    //#define _Debug
    // error found running the program with the -Xcheck:jni switch
    //page 38 and 39 of The Java Native Interface Guide by Sheng Liang
    JNIEXPORT jobjectArray JNICALL Java_petes_JNI_ObjectArrayTest_initInt2DArray
      (JNIEnv *env, jclass class, jint size)
         jobjectArray result;
         jint i;
         jclass intArrCls = (*env)->FindClass(env, "[I");
         if (intArrCls == NULL)
              return NULL;
         result = (*env)->NewObjectArray(env, size, intArrCls, NULL);
         if (result = NULL)
              return NULL; 
         for (i = 0; i < size; i++)
              jint tmp[256]; // make sure it is large enough
              jint j;
              jintArray iarr = (*env)->NewIntArray(env, size);
              if (iarr == NULL)
                   return NULL; 
              for (j = 0; j < size; j++)
                   tmp[j] = i + j;
              (*env)->SetIntArrayRegion(env, iarr, 0, size, tmp);
              (*env)->SetObjectArrayElement(env, result, i, iarr); // ***** ERROR:  Non-array passed to JNI array operations
              (*env)->DeleteLocalRef(env, iarr);
         return result;
    }Here is my java code
    package petes.JNI;
    public class ObjectArrayTest
        private static native int[][] initInt2DArray(int size);
        static
            System.loadLibrary("petes_JNI_ObjectArrayTest");
        public static void main(String[] args)
            int[][] i2arr = initInt2DArray(3);
            if (i2arr != null)
                for (int i = 0; i < i2arr.length; i++)
                    for (int j = 0; j < i2arr[0].length; j++)
                        System.out.println(" " + i2arr[i][j]);
                    System.out.println();
            else
                System.out.println("i2arr is null");
    }Thanks in advance!
    Pete

    Niceguy1: Thanks for the quick reply!
    So far, I mainly see the usual differences between C and C++ JNI calls. Also, in the example you gave, they use a lot of casts, but that doesn't seem to make much difference to my output. Also, in the example, they create a 0-initilized int array, and use this class to initialze the class type of the Object array. I get the class type by a call to FindClass for a class type of "[I".  I'll try this their way and see what happens...
    Edit:  Changing the way I find the array element Object type did not help.  I still get the same error as previous.  Any other ideas would be greatly appreciated.
    Message was edited by:
            petes1234                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Help with arrays and Exception in thread "main" java.lang.NullPointerExcept

    Hi, I have been having trouble all day getting this array sorted and put into a new array. I think it is something simple with my nested loops in sortCityArray() that is causing the problem. Any help would be greatly appreciated. The error is thrown on line 99 at Highway.sortCityArray(Highway.java:99)
    import java.util.Scanner;
    import java.io.*;
    import java.util.Arrays;
    public class Highway
    private String[] listOfCities=new String[200];
    private City[] cityArray=new City[200];
    private City[] sortedCityArray=new City[200];
    private String city="";
    private String city2="";
    private String fileName;
    private City x;
    private int milesToNextCity;
    private int milesAroundNextCity;
    private int speedToNextCity;
    public Highway(String filename)
    String fileName=filename;//"I-40cities.txt";
           File myFile = new File(fileName);
           try {
           Scanner scan=new Scanner(myFile);
           for(int i=0; scan.hasNextLine(); i++){
           String city=scan.nextLine();
           String city2=scan.nextLine();
           int milesToNextCity=scan.nextInt();
           int milesAroundNextCity=scan.nextInt();
           int speedToNextCity=scan.nextInt();
                   if(scan.hasNextLine()){
              scan.nextLine();
           cityArray=new City(city,city2,milesToNextCity,milesAroundNextCity,speedToNextCity);
    // System.out.println(cityArray[i].getCity());
    // System.out.println(cityArray[i].getNextCity());
    // System.out.println(cityArray[i].getLengthAB());
    // System.out.println(cityArray[i].getLengthAroundB());
    // System.out.println(cityArray[i].getSpeedAB());
    catch (Exception e) {
    System.out.println(e);
    //return cityArray;
    /*public City[] doCityArray(){
    File myFile = new File(fileName);
    try {
    Scanner scan=new Scanner(myFile);
    for(int i=0; scan.hasNextLine(); i++){
    String city=scan.nextLine();
    String city2=scan.nextLine();
    int milesToNextCity=scan.nextInt();
    int milesAroundNextCity=scan.nextInt();
    int speedToNextCity=scan.nextInt();
         if(scan.hasNextLine()){
              scan.nextLine();
    cityArray[i]=new City(city,city2,milesToNextCity,milesAroundNextCity,speedToNextCity);
    // System.out.println(cityArray[i].getCity());
    // System.out.println(cityArray[i].getNextCity());
    // System.out.println(cityArray[i].getLengthAB());
    // System.out.println(cityArray[i].getLengthAroundB());
    // System.out.println(cityArray[i].getSpeedAB());
    catch (Exception e) {
    System.out.println(e);
    return cityArray;
    public City[] sortCityArray(){
    sortedCityArray[0]=new City(cityArray[0].getCity(),cityArray[0].getNextCity(),cityArray[0].getLengthAB(),cityArray[0].getLengthAroundB(),cityArray[0].getSpeedAB());
    for(int j=0; j<cityArray.length; j++ )
         for(int i=0; i<cityArray.length ;i++)
              if(sortedCityArray[j].getNextCity().equals(cityArray[i].getCity())){
              sortedCityArray[j+1]=new City(cityArray[i].getCity(),cityArray[i].getNextCity(),cityArray[i].getLengthAB(),cityArray[i].getLengthAroundB(),cityArray[i].getSpeedAB());
              break;
    /*     for(int i=0; i<cityArray.length ;i++)
              if(sortedCityArray[j].getNextCity().equals(cityArray[i].getCity())){
              sortedCityArray[j+1]=new City(cityArray[i].getCity(),cityArray[i].getNextCity(),cityArray[i].getLengthAB(),cityArray[i].getLengthAroundB(),cityArray[i].getSpeedAB());
         break;
              for(int i=0; i<cityArray.length ;i++)
              if(sortedCityArray[j].getNextCity().equals(cityArray[i].getCity())){
              sortedCityArray[j+1]=new City(cityArray[i].getCity(),cityArray[i].getNextCity(),cityArray[i].getLengthAB(),cityArray[i].getLengthAroundB(),cityArray[i].getSpeedAB());
         break;
              for(int i=0; i<cityArray.length ;i++)
              if(sortedCityArray[j].getNextCity().equals(cityArray[i].getCity())){
              sortedCityArray[j+1]=new City(cityArray[i].getCity(),cityArray[i].getNextCity(),cityArray[i].getLengthAB(),cityArray[i].getLengthAroundB(),cityArray[i].getSpeedAB());
         break;
    //     j++;
    System.out.println(sortedCityArray[0].getCity());
    System.out.println(sortedCityArray[0].getNextCity());
    System.out.println(sortedCityArray[0].getLengthAB());
    System.out.println(sortedCityArray[0].getLengthAroundB());
    System.out.println(sortedCityArray[0].getSpeedAB());
    System.out.println(sortedCityArray[1].getCity());
    System.out.println(sortedCityArray[1].getNextCity());
    System.out.println(sortedCityArray[1].getLengthAB());
    System.out.println(sortedCityArray[1].getLengthAroundB());
    System.out.println(sortedCityArray[1].getSpeedAB());
    System.out.println(sortedCityArray[2].getCity());
    System.out.println(sortedCityArray[2].getNextCity());
    System.out.println(sortedCityArray[2].getLengthAB());
    System.out.println(sortedCityArray[2].getLengthAroundB());
    System.out.println(sortedCityArray[2].getSpeedAB());
    System.out.println(sortedCityArray[3].getCity());
    System.out.println(sortedCityArray[3].getNextCity());
    System.out.println(sortedCityArray[3].getLengthAB());
    System.out.println(sortedCityArray[3].getLengthAroundB());
    System.out.println(sortedCityArray[3].getSpeedAB());
    System.out.println(sortedCityArray[4].getCity());
    System.out.println(sortedCityArray[4].getNextCity());
    System.out.println(sortedCityArray[4].getLengthAB());
    System.out.println(sortedCityArray[4].getLengthAroundB());
    System.out.println(sortedCityArray[4].getSpeedAB());
    return cityArray;
    /*public String[] listOfCities(){
    File myFile = new File("I-40cities.txt");
    try {
    Scanner scan=new Scanner(myFile);
    for(int i=0; scan.hasNextLine(); i++){
         String city=scan.nextLine();
         city=city.trim();
    scan.nextLine();
    scan.nextLine();
         listOfCities[i]=city;
         System.out.println(listOfCities[i]);
    catch (Exception e) {
    System.out.println(e);
    return listOfCities;
    public static void main(String args[]) {
    Highway h = new Highway("out-of-order.txt");
    h.sortCityArray();

    the ouput is perfect according to the print lines if I use (increase the int where j is in the loop manually by one) :
         for(int i=0; i<cityArray.length ;i++)
              if(sortedCityArray[0].getNextCity().equals(cityArray.getCity())){
              sortedCityArray[0+1]=new City(cityArray[i].getCity(),cityArray[i].getNextCity(),cityArray[i].getLengthAB(),cityArray[i].getLengthAroundB(),cityArray[i].getSpeedAB());
              break;
         for(int i=0; i<cityArray.length ;i++)
              if(sortedCityArray[1].getNextCity().equals(cityArray[i].getCity())){
              sortedCityArray[1+1]=new City(cityArray[i].getCity(),cityArray[i].getNextCity(),cityArray[i].getLengthAB(),cityArray[i].getLengthAroundB(),cityArray[i].getSpeedAB());
         break;
              for(int i=0; i<cityArray.length ;i++)
              if(sortedCityArray[2].getNextCity().equals(cityArray[i].getCity())){
              sortedCityArray[2+1]=new City(cityArray[i].getCity(),cityArray[i].getNextCity(),cityArray[i].getLengthAB(),cityArray[i].getLengthAroundB(),cityArray[i].getSpeedAB());
         break;
              for(int i=0; i<cityArray.length ;i++)
              if(sortedCityArray[3].getNextCity().equals(cityArray[i].getCity())){
              sortedCityArray[3+1]=new City(cityArray[i].getCity(),cityArray[i].getNextCity(),cityArray[i].getLengthAB(),cityArray[i].getLengthAroundB(),cityArray[i].getSpeedAB());
         break;
    But I cant do this for 200 elements. Are the loops nested right?
    Edited by: modplan on Sep 22, 2008 6:49 PM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • JDBC Persistent Store Exceptions Table needs to be renamed

    we are facing a situation almost every week in production. The only workaround is to rename the table everytime an boune the Weblogic. Oracle recommended to increase the statement timeout. Not sure if that will work.
    Can anyone provide what is the reason behind this. As there is only admin server in this domain with single JMS Server and JDBC Store. So not sure how the ownership is lost. Any help is appreciated .
    ####<Dec 25, 2010 4:32:01 AM IST> <Error> <Store> <gnnosm21> <OSMServer> <[ACTIVE] ExecuteThread: '65' for queue: 'weblogi
    c.kernel.Default (self-tuning)'> <<WLS Kernel>> <1293231721099> <BEA-280075> <JDBC store "oms_jms_store" failed to r
    etain ownership of database table "OM_BEAWLStore", either due to database access problems or due to concurrent accessors o
    f the table. See the linked exception for more information.
    weblogic.store.io.jdbc.JDBCStoreException: [Store:280065]java.sql.SQLException: ORA-01013: user requested cancel of curren
    t operation
    (server="OSMServer" store="oms_jms_store" table="OM_BEAWLStore"):(Linked Cause, "java.sql.SQLException: ORA-01013: user r
    equested cancel of current operation
    at weblogic.store.io.jdbc.JDBCStoreIO.readTableLockRecord(JDBCStoreIO.java:2078)
    at weblogic.store.io.jdbc.JDBCStoreIO.updateTableOwnership(JDBCStoreIO.java:2105)
    at weblogic.store.io.jdbc.ReservedConnection.timerExpired(ReservedConnection.java:436)
    at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:265)
    at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
    java.sql.SQLException: ORA-01013: user requested cancel of current operation
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
    at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:216)
    at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:955)
    at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1060)
    at oracle.jdbc.driver.T4CPreparedStatement.executeMaybeDescribe(T4CPreparedStatement.java:839)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1124)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3316)
    at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3361)
    at weblogic.jdbc.wrapper.PreparedStatement.executeQuery(PreparedStatement.java:100)
    at weblogic.store.io.jdbc.JDBCStoreIO.internalRead(JDBCStoreIO.java:721)
    at weblogic.store.io.jdbc.JDBCStoreIO.readTableLockRecord(JDBCStoreIO.java:2066)
    at weblogic.store.io.jdbc.JDBCStoreIO.updateTableOwnership(JDBCStoreIO.java:2105)
    at weblogic.store.io.jdbc.ReservedConnection.timerExpired(ReservedConnection.java:436)
    at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:265)
    at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)

    Hi,
    You didnot mention what is that everytime you mean in your question....
    Did you check is there any other user also using the same database table "OM_BEAWLStore" from your development environment connecting with the same JMS persistance store?

  • How to store EXCEPTION code in separate code block for ease of maintenance?

    I'm new to pl/sql and oracle, but I've created a lot of procedures that use the same business logic for security checks. I've tried to outline an example stored procedure below.
    If my security checks that I use to raise exceptions are always the same for all of the stored procedures, what's the best way to structure the procedure/environment so that if I ever want to change (such as add or delete) the exceptions, that I don't need to manually edit each individual procedure? Could I call another procedure to do this, and the exceptions will be raised up through it to the calling procedure? Any example would be much appreciated.
    create or replace
    PROCEDURE MY_SPROC(
    AS
    begin
    /***** security check ****/
    SELECT col1, col2 INTO v_col1, v_col2
    FROM my_table1 WHERE user_email = in_user_id;
    -- check 1
    IF v_col1 != in_var1 THEN
    RAISE e_bad_input;
    -- check 2
    ELSIF v_col2 = in_var2 THEN
    RAISE e_bad_form;
    ELSIF ...
    END IF;
    ... /* body of code */
    EXCEPTION
    WHEN e_bad_input THEN out_msg := 'Error 1 …';
    WHEN e_bad_form THEN out_msg := 'Error 2 ...';
    WHEN e_bad_output THEN out_msg := 'Error 3 ...';
    WHEN NO_DATA_FOUND THEN out_msg := 'Error 4 …';
    WHEN OTHERS THEN out_msf := 'Error 5 ...';
    RAISE;
    end MY_SPROC;

    >
    Some other languages like ActionScript or C offer "import" or "include" commands that can be used to insert a code block to a function or procedure as if that block was typed exactly where it was imported or included
    >
    There is no equivalent of 'include'.
    >
    suppose I want to change the text description or error number in the exception
    I wonder what others do in this situation?
    >
    One way is to use the RAISE_APPLICATION_ERROR procedure.
    See Defining Your Own Error Messages (RAISE_APPLICATION_ERROR Procedure) in the PL/SQL Language doc
    http://docs.oracle.com/cd/B28359_01/appdev.111/b28370/errors.htm#BABGIIBI
    >
    The RAISE_APPLICATION_ERROR procedure lets you issue user-defined ORA-n error messages from stored subprograms. That way, you can report errors to your application and avoid returning unhandled exceptions.
    To invoke RAISE_APPLICATION_ERROR, use the following syntax:
    raise_application_error(
    error_number, message[, {TRUE | FALSE}]);
    where error_number is a negative integer in the range -20000..-20999 and message is a character string up to 2048 bytes long. If the optional third parameter is TRUE, the error is placed on the stack of previous errors. If the parameter is FALSE (the default), the error replaces all previous errors. RAISE_APPLICATION_ERROR is part of package DBMS_STANDARD, and as with package STANDARD, you need not qualify references to it.
    An application can invoke raise_application_error only from an executing stored subprogram (or method). When invoked, raise_application_error ends the subprogram and returns a user-defined error number and message to the application. The error number and message can be trapped like any Oracle Database error.
    >
    The error_number and message can be variables so for generalization you could define the actual list of each in the package spec and then reference them by variable name in the code.
    So instead of
    RAISE e_bad_input;
    EXCEPTION
    WHEN e_bad_input THEN out_msg := 'Error 1 …';You would code
    -- package spec
    gc_bad_input_number NUMBER := -20001;
    gc_bad_input_message VARCHAR2(30) := 'Bad Input Message';
    -- code in procedure
    raise_application_error(gc_bad_input_number , gc_bad_input_message [, {TRUE | FALSE}]);Then you can change the message numbes and text used by changing the package spec and recompiling.
    NOTE: If you change the package spec it will invalidate related objects and they will need to be recompiled. So this approach is suitable when deploying new code in a window when the system is not available for users.
    An alternative is to create a table that contains the error numbers and messages and then load them into the package in the package body using the package level initialization section (a top-level block BEGIN). For that approach though the values might be loaded into an associative array where the key for each entry is the type of exception; for example 'bad_input'.
    The RAISE_APPLICATION_ERROR would reference the associative array for 'error_number's by using 'bad_input' as the key and the text message array the same way.
    The first approach hard-codes the codes and messages into the package spec so a code review can see them all.
    The second approach is table-driven and indirect so by looking at the code you don't really know what the codes or messages are going to be.
    Either approach could use a separate package spec dedicated to exception handling variables and declarations.
    Is that more like what you had in mind?

  • FATAL ERROR in native method: Non-array passed to JNI array operations

    After stepping up to JDK 1.4.2 we started getting a hotspot error, I added -Xcheck:jni and it yielded the above error which was not existent in JDK 1.4.1 and for the life of me I cannot find out whats wrong:
    Native method dec:
    private native byte[] cost(final byte[] byte_array,
    final double minCostPerMeter,
    final int costFuncSelection,
    final double maxCostThreshold);
    Method call:
    ByteArrayInputStream
    inputByteStream = new ByteArrayInputStream(
    cost(output_byte_stream.toByteArray(),
    minCostPerMeter,
    costFunctionSelection.length,
    maxCostThreshold));
    An array is being passed I have no idea why it is complaing about the method call.
    Any help would be appreciated.
    -R

    What happens if you remove all the code from the JNI method - so it just calls and then returns?
    If it still occurs then I would expect that you have a memory problem in a piece of code before this one. Such problems can have no impact when run in one environment but cause failures in another becomes some other legitimate piece of data moved.
    If it doesn't then I would expect that the problem is in the method itself and not the call.
    It could be some odd VM problem so trying a different version of 1.4.2 might help (but in of itself would not eliminate the possibility that you have a memory problem.)

  • How to disable the "permanently store exception" checkbox by default?

    I'd like to change the default behaviour of the "Permanently store this [certificate] exception" checkbox so that it is NOT checked by default. I don't want to store the exception for self-signed certificates on my internal servers, but Firefox makes me jump through to hoops to verify that yes, I really, really want to go ahead and open the page, and then (with the checkbox already checked by default) I have to remember to UNcheck the box so that I can view the page but not store the certificate.
    Is there any way to change a setting so that this checkbox is turned off by default? or that the whole bad-certificate rigmarole is disabled for a certain IP range (say, for 10.0.0.0/8)?

    ... or release a patch for the API,
    ... or suggest an alternative route to achieve the intended result.

  • JMS Store Exception with MS SQL Server in Win2K

              Hello,
              All my messages are persisted in some PTP queues within JMSStore and JMSState
              in MSSQL Server.
              When WLS is restarted, I have the following exception, any idea?
              <07-Oct-02 16:28:05 BST> <Info> <JMS> <JMSServer "JMSServer", Opening JDBC store
              tables "JMSStore" and "JMSState" using connection
              pool "MyCMSDBConnectionPool".>
              <07-Oct-02 16:28:06 BST> <Alert> <JMS> <JMSServer "JMSServer", store failed to
              open, java.io.IOException: JMS JDBC store, connecti
              on pool = <MyCMSDBConnectionPool>, prefix = <null>: recover
              java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]ResultSet can
              not re-read row data for column 1.
              at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
              at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
              at com.microsoft.jdbc.base.BaseResultSet.validateColumnIndex(Unknown Source)
              at com.microsoft.jdbc.base.BaseResultSet.getLong(Unknown Source)
              at com.microsoft.jdbc.base.BaseResultSet.getLong(Unknown Source)
              at weblogic.jdbc.pool.ResultSet.getLong(ResultSet.java:304)
              at weblogic.jms.store.JDBCIOStream.doRecoverBodies(JDBCIOStream.java:800)
              at weblogic.jms.store.JDBCIOStream.doRecover(JDBCIOStream.java:706)
              at weblogic.jms.store.JDBCIOStream.recover(JDBCIOStream.java:915)
              at weblogic.jms.store.JMSStore.recover(JMSStore.java:138)
              at weblogic.jms.backend.BEStore.open(BEStore.java:182)
              at weblogic.jms.backend.BackEnd.initialize(BackEnd.java:390)
              at weblogic.jms.JMSService.createBackEnd(JMSService.java:906)
              at weblogic.jms.JMSService.addJMSServer(JMSService.java:1273)
              at weblogic.jms.JMSService.addDeployment(JMSService.java:1169)
              at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:360)
              at weblogic.management.mbeans.custom.DeploymentTarget.addDeployments(DeploymentTarget.java:285)
              at weblogic.management.mbeans.custom.DeploymentTarget.updateServerDeployments(DeploymentTarget.java:239)
              at weblogic.management.mbeans.custom.DeploymentTarget.updateDeployments(DeploymentTarget.java:199)
              at java.lang.reflect.Method.invoke(Native Method)
              at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
              at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
              at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:360)
              at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1557)
              at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1525)
              at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
              at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
              at $Proxy0.updateDeployments(Unknown Source)
              at weblogic.management.configuration.ServerMBean_CachingStub.updateDeployments(ServerMBean_CachingStub.java:2977)
              at weblogic.management.mbeans.custom.ApplicationManager.startConfigManager(ApplicationManager.java:372)
              at weblogic.management.mbeans.custom.ApplicationManager.start(ApplicationManager.java:160)
              at java.lang.reflect.Method.invoke(Native Method)
              at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
              at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
              at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:360)
              at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1557)
              at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1525)
              at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
              at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
              at $Proxy53.start(Unknown Source)
              at weblogic.management.configuration.ApplicationManagerMBean_CachingStub.start(ApplicationManagerMBean_CachingStub.java:48
              0)
              at weblogic.management.Admin.startApplicationManager(Admin.java:1234)
              at weblogic.management.Admin.finish(Admin.java:644)
              at weblogic.t3.srvr.T3Srvr.start(T3Srvr.java:524)
              at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:207)
              at weblogic.Server.main(Server.java:35)
              

    Hmmm. Is this a new driver version, or just coincidence? -- The same problem
              was posted in this newsgroup last week. I'm beginning to suspect
              there is a bug in the MS driver.
              Anyhow, please contact BEA customer support. Meanwhile, the work-around is
              to use WebLogic's driver.
              Tom, BEA
              Thierry wrote:
              > Hello,
              >
              > All my messages are persisted in some PTP queues within JMSStore and JMSState
              > in MSSQL Server.
              >
              > When WLS is restarted, I have the following exception, any idea?
              >
              > <07-Oct-02 16:28:05 BST> <Info> <JMS> <JMSServer "JMSServer", Opening JDBC store
              > tables "JMSStore" and "JMSState" using connection
              > pool "MyCMSDBConnectionPool".>
              > <07-Oct-02 16:28:06 BST> <Alert> <JMS> <JMSServer "JMSServer", store failed to
              > open, java.io.IOException: JMS JDBC store, connecti
              > on pool = <MyCMSDBConnectionPool>, prefix = <null>: recover
              > java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]ResultSet can
              > not re-read row data for column 1.
              > at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
              > at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
              > at com.microsoft.jdbc.base.BaseResultSet.validateColumnIndex(Unknown Source)
              > at com.microsoft.jdbc.base.BaseResultSet.getLong(Unknown Source)
              > at com.microsoft.jdbc.base.BaseResultSet.getLong(Unknown Source)
              > at weblogic.jdbc.pool.ResultSet.getLong(ResultSet.java:304)
              > at weblogic.jms.store.JDBCIOStream.doRecoverBodies(JDBCIOStream.java:800)
              > at weblogic.jms.store.JDBCIOStream.doRecover(JDBCIOStream.java:706)
              > at weblogic.jms.store.JDBCIOStream.recover(JDBCIOStream.java:915)
              > at weblogic.jms.store.JMSStore.recover(JMSStore.java:138)
              > at weblogic.jms.backend.BEStore.open(BEStore.java:182)
              > at weblogic.jms.backend.BackEnd.initialize(BackEnd.java:390)
              > at weblogic.jms.JMSService.createBackEnd(JMSService.java:906)
              > at weblogic.jms.JMSService.addJMSServer(JMSService.java:1273)
              > at weblogic.jms.JMSService.addDeployment(JMSService.java:1169)
              > at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:360)
              > at weblogic.management.mbeans.custom.DeploymentTarget.addDeployments(DeploymentTarget.java:285)
              > at weblogic.management.mbeans.custom.DeploymentTarget.updateServerDeployments(DeploymentTarget.java:239)
              > at weblogic.management.mbeans.custom.DeploymentTarget.updateDeployments(DeploymentTarget.java:199)
              > at java.lang.reflect.Method.invoke(Native Method)
              > at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
              > at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
              > at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:360)
              > at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1557)
              > at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1525)
              > at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
              > at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
              > at $Proxy0.updateDeployments(Unknown Source)
              > at weblogic.management.configuration.ServerMBean_CachingStub.updateDeployments(ServerMBean_CachingStub.java:2977)
              > at weblogic.management.mbeans.custom.ApplicationManager.startConfigManager(ApplicationManager.java:372)
              > at weblogic.management.mbeans.custom.ApplicationManager.start(ApplicationManager.java:160)
              > at java.lang.reflect.Method.invoke(Native Method)
              > at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
              > at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
              > at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:360)
              > at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1557)
              > at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1525)
              > at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
              > at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
              > at $Proxy53.start(Unknown Source)
              > at weblogic.management.configuration.ApplicationManagerMBean_CachingStub.start(ApplicationManagerMBean_CachingStub.java:48
              > 0)
              > at weblogic.management.Admin.startApplicationManager(Admin.java:1234)
              > at weblogic.management.Admin.finish(Admin.java:644)
              > at weblogic.t3.srvr.T3Srvr.start(T3Srvr.java:524)
              > at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:207)
              > at weblogic.Server.main(Server.java:35)
              

  • Assigning a value to the String array - geting exception

    Hi,
    All I'm trying to do is
    String[] appName = null;
    appName[0] = "all";
    This is throwing a Null Pointer Exception!

    Of course it is. You have to init. the object. Ex:
    String[] appName = null;
    appName = new String[1];
    appName[0] = "all";
    or even better:
    String[] appName = new String[1];
    appName[0] = "all";

  • Error when trying to upload an app to the App Store (exception while validating)

    Hello everybody,
    I'm trying to upload an update of a DPS single edition app but when using the Application Loader I have this error:
    "Exception while validating: *** -[NSPlaceholderString initWithFormat:locale:arguments:]: nil argument"
    Any suggestion? the test app works right in my iPads and I tried to download the zip file (from DPS App Builder) several times with the same result.
    Thanks

    @Riccardo – I suggest you go to the DPS forum for this:
    http://forums.adobe.com/community/dps?view=discussions
    Uwe

  • I can purchase anything from App Store except from zombie hq

    hi
    I have an issue
    why I can't buy from zombie hq
    in he same time I can buy anything I want in AppStore
    please help me

    Hello yazeed-x,
    I was looking for articles to try and resolve your specific issue, and came across an article that I think will help to resolve your issue. Its called The iPhone Troubleshooting Assistant found here: http://www.apple.com/support/iphone/assistant/application/.
    I would start at the first step and verify your iPad meets the requirements for the game:
    Verify iOS requirements
    Make sure the app is compatible with your iPhone software:
    Check the requirements in the App Store.
    Check your iOS version using Settings > General > About.
    If the app requires a newer version of the iOS than the one you are using, update iOS on your iPhone.
    If it comes to step 3, Close app, I recommend closing ALL the apps not just the app store.
    All the best,
    Sterling

  • I can't understand why I haven't sold any items in my eBay store except for books in several months.

    In Spring 2014 approx., I began adding my collection of books to my eBay store.  I was on ABE Books but they were very expensive, and my books on eBay started selling almost right away.  Unforunately they are all around $4 give or take, and with only 3 or 4 selling per month, it doesn't recoup the fee I pay for my eBay Store. I don't understand why I have had almost no sales in any of my other product areas, once I put my books for sale on eBay.  There isn't some sort of thing that blocks out my other items now that I have books listed, is there? I have to get some sales in my clothing, shoes, handbags and designer goods sections otherwise I'll have to go back to just a basic eBay store.  I can't live on sales of only 4 books at $4 each month.

    Now ill and disabled, I want to sell everything to benefit animal rescue before it is too late I noticed these claims in your Store header. While BDR (Buyers Don't Read), I would like to encourage you to drop both. Customers don't care about our personal lives. They want to buy stuff at a good price. Self-pity, no matter how true, will turn off buyers because there are way too many scammers using the same kind of tale of woe. Rethink and rewrite it. You don't owe anyone an explanation of why you are selling your New With Tags*  goods.  And you can't advertise that you are supporting a charity without clearing it with eBay first. This could lead to having all your items closed. Again, this is because scammers have done the same thing. Here's the policy:http://ocsnext.ebay.ca/ocs/sc  I seem to remember you from postings a few years ago. I hope your life has gotten better since then. You were in some distress as I recall.  BTW- Your post encouraged me to clean up the 'aisles' in my Store. I was finding some pretty odd locations-- why would I have put a Vogue dress pattern in my 'Erotica, Sex and Sexuality' aisle, for example? Late night posting probably.   So thank you!     *NWT is a common Search. You use 'Tags On' which is not searched.

  • Array List exceptions

    Hi,
    Want to know if ArrayList throws Index out of bound exception when we try to get element from an ArrayList thats empty.
    If This exception is not thrown, then whats the exception that is thrown in this scenario?
    Thanx

    By the time you'd logged on, written that question
    and waited for a response would it not have been
    quicker to write a noddy program to test this out?Or read the documentation? Quote:
    Throws:
    IndexOutOfBoundsException - if index is out of range (index < 0 || index >= size()).
    Unquote. When size() is 0, index is necessarily either < 0 or >= size().

  • TS1424 just downloaded a song off the store, except when i try to play it i get a window telling me that my computer isn't authorised to play it, but it IS. now what?

    this is driving me a bit mental atm because i just simultaneously downloaded an entire album that appears to be working just fine.
    i've tried just putting in my apple ID when it is requested of me, but of course since this laptop is already authorised, nothing changes.
    would definitely appreciate some help, because this is silly :[

    If you are getting repeatedly prompted to authorise your account then see if this page helps : http://support.apple.com/kb/TS1389

Maybe you are looking for