Exception accessing FolderRights
Hi,
I've created a Windows 7 application that integrates with GW7.x and higher.
The application is a C# Windows Forms application using .NET 3.5 . With any
version of GW, I am getting the attached error message and the application
crashes.
The error occurs when I access the address property of the FolderRights
object. To reproduce the error, create a personal folder and share it with a
couple of people in the GroupWise system address book. Once done, run the
code below and it will crash with the error below and the screen capture
I've attached.
The details of the crash have been included. Below the details, I have
included the sample code that produces the error. I would appreciate some
direction on this.
Thanks
Tim
**********************************BEGIN ERROR DETAILS
Problem signature:
Problem Event Name: APPCRASH
Application Name: SageSoftSolutions.GroupWise.Wizard.vshost.exe
Application Version: 10.0.30319.1
Application Timestamp: 4ba2084b
Fault Module Name: StackHash_2374
Fault Module Version: 6.1.7600.16695
Fault Module Timestamp: 4cc7ab86
Exception Code: c0000374
Exception Offset: 000cea27
OS Version: 6.1.7600.2.0.0.256.48
Locale ID: 1033
Additional Information 1: 2374
Additional Information 2: 2374e92e674ab518ce7b17d1ec740d25
Additional Information 3: d043
Additional Information 4: d043f5f65ddc950e74ffd27eb5c8952d
Read our privacy statement online:
http://go.microsoft.com/fwlink/?link...8&clcid=0x0409
If the online privacy statement is not available, please read our privacy
statement offline:
C:\Windows\system32\en-US\erofflps.txt
**********************************END ERROR DETAILS
**********************************BEGIN SAMPLE CODE
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using GWLibrary = GroupwareTypeLibrary;
namespace WindowsFormsApplication4
public partial class Form1 : Form
private GWLibrary.Application5 m_groupWise = null;
private GWLibrary.Account8 m_account = null;
public Form1()
InitializeComponent();
private void Form1_Load(object sender, EventArgs e)
this.m_groupWise = new GWLibrary.Application5();
this.m_groupWise.MultiLoginAddressBookSupport = false;
private bool Login(string user, string password, string cmdLine)
try
// login and save GroupWise account object
m_account = (GWLibrary.Account8)this.m_groupWise.MultiLogin(us er, cmdLine,
password, GWLibrary.LoginConstants.egwNeverPrompt, Type.Missing);
// return authentication state
return true;
catch (Exception e)
Console.WriteLine(e.Message);
// return authentication state
return false;
private void Logout()
// release GroupWise account
if (m_account != null)
m_account = null;
private void Dispose()
// release connections
Logout();
// release GroupWise object
if (m_groupWise != null)
m_groupWise.Quit();
m_groupWise = null;
private void button1_Click(object sender, EventArgs e)
if (Login("admin", "password", "ipa-gwserver /ipp-1677"))
try
// get all personal folders for this account
foreach (GWLibrary.IGWFolder folder in
(GWLibrary.IGWFolders)this.m_account.AllFolders)
String FolderName = String.Format("FolderName: {0}", folder.Name);
Console.WriteLine(FolderName);
if (folder.ObjType == GWLibrary.FolderTypeConstants.egwPersonalFolder &&
folder.Shared != GWLibrary.SharedFolderConstants.egwSharedIncoming)
// access folder rights
GWLibrary.IGWFolderRightsCollection rights =
(GWLibrary.IGWFolderRightsCollection)folder.Folder Rights;
// iterate rights list
for (int index = 1; index <= rights.Count; index++ )
try
// extract rights object
GWLibrary.IGWFolderRights right =
(GWLibrary.IGWFolderRights)rights.Item(index);
// get address
// TO DO: issue with GW interface object for folder rights
GWLibrary.IGWAddress address = (GWLibrary.IGWAddress)right.Address; // this
is where the app crashes!!!
Console.WriteLine(address.DisplayName);
catch (Exception x)
Console.WriteLine(x);
catch(Exception x)
Console.WriteLine(x);
Logout();
**********************************END SAMPLE CODE
Thanks Tommy.
I'm wondering if maybe this is a service issue. I am using the windows
service versions of GroupWise on an W2K server. Had this issue with the
version 7 client and now the version 8 client. Seems a little conspicuous
since neither client works. The only difference I see here is your back end.
You are using a linux server and I'm using a windows server.
Tim
"Tommy Mikkelsen" wrote in message
news:_6sPp.2022$[email protected]..
Your code works fine here.
Tested with GW7.0.3 with latest HP on WinXP, as well as on Win7Ent64
with GW8.0.3 against 8.0.3 with latest official patches running on
OES2-SP2 Linux
So I suspect a client issue here
I can only suggest you reinstall the client as a start, and do know
that MA has a very nice cleaning agent :-P
Tommy Mikkelsen
IT Quality A/S, Denmark
Novell Support Forums SYSOP / NKP
Sorry, but no support through email
Please join http://www.open-horizons.net
Similar Messages
-
Using Weblogic Platform 7.0 (installed from platform700_win32.exe),
Running a BPM Doamin(WLIDomain with BPM only).
When I try to access my entity bean(CMP), the following exception is getting thrown.
I have seen a similar post in here, but the answer to that post, which says to
provide ACL. does not apply quite well my scenario.
To do this, I right clicked on the connection pool and selected define Ploicy..
It shows two options
RealmAdapterAuthorizer and DefaultAuthorizer; On DefaultAuthroizer i specified
role accessing the resource would be "everyone". - restarted the server - but
still the same error.
Please suggest a solution if any. Do i have to get some service pack for this?
TIA
Ranjith.We have never seen a case yet where this was not a permissions problem.
Do you have a fileRealm.properties file as part of your configuration?
"Ranjith" <[email protected]> wrote in message
news:3f0fdeb3$[email protected]..
>
java.sql.SQLException: Cannot obtain connection after 3600 seconds. ,Exception
= Access not allowed
java.sql.SQLException: Cannot obtain connection after 3600 seconds. ,Exception
= Access not allowed
atweblogic.jdbc.jts.Connection.wrapAndThrowSQLException(Connection.java:701)
atweblogic.jdbc.jts.Connection.getOrCreateConnection(Connection.java:623)
atweblogic.jdbc.jts.Connection.prepareStatement(Connection.java:133)
atweblogic.jdbc.rmi.internal.ConnectionImpl.prepareStatement(ConnectionImpl.ja
va:139)
atweblogic.jdbc.rmi.SerialConnection.prepareStatement(SerialConnection.java:81
atservice.samplemgt.v1_0.ejb.entity.BanksampletypeCMP_ckv0ao__WebLogic_CMP_RDB
MS.ej
bFindAll(BanksampletypeCMP_ckv0ao__WebLogic_CMP_RDBMS.java:873)
at java.lang.reflect.Method.invoke(Native Method)
atweblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.collectionFinder(RDBMSPersi
stenceManager
java:300)
atweblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityManager.
java:715)
atweblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityManager.
java:688)
atweblogic.ejb20.internal.EntityEJBLocalHome.finder(EntityEJBLocalHome.java:47
6)
at ... -
Too many exception"ACCESS.ERROR: Authorization check"
We found there are too many Exception "ACCESS.ERROR: Authorization check for caller assignment to J2EE security role" occur in our Portal System with a 10 seconds interval after checking the defalutTrace file. Can anyone help us to resolve the problem?
thanks in advance.
Date : 10/29/2007
Time : 15:29:58:057
Message : ACCESS.ERROR: Authorization check for caller assignment to J2EE security role [service.jms.default.authorization : administrators] referencing J2EE security role [SAP-J2EE-Engine : administrators].
Severity : Error
Category : /System/Security/Audit/J2EE
Location : com.sap.engine.services.security.roles.SecurityRoleReference
Application : sap.com/irj
Thread : Thread[Thread-54,5,SAPEngine_Application_Thread[impl:3]_Group]
Datasource : 1193643286133:/usr/sap/EP0/DVEBMGS00/j2ee/cluster/server0/log/defaultTrace.trc
Message ID : 001125C013B40061000030D50071607A00043D9CAAE34B57
Source Name : com.sap.engine.services.security.roles.SecurityRoleReference
Argument Objs : ACCESS.ERROR,service.jms.default.authorization,administrators,SAP-J2EE-Engine,administrators,
Arguments : ACCESS.ERROR,service.jms.default.authorization,administrators,SAP-J2EE-Engine,administrators,
Dsr Component :
Dsr Transaction : 0c229a6085c811dc8856001125c013b4
Dsr User :
Indent : 0
Level : 0
Message Code :
Message Type : 1
Relatives : /System/Security/Audit/J2EE
Resource Bundlename :
Session : 3572
Source : com.sap.engine.services.security.roles.SecurityRoleReference
ThreadObject : Thread[Thread-54,5,SAPEngine_Application_Thread[impl:3]_Group]
Transaction :
User : J2EE_GUEST
Date : 10/29/2007
Time : 15:29:38:017
Message : ACCESS.ERROR: Authorization check for caller assignment to J2EE security role [SAP-J2EE-Engine : administrators].
Severity : Error
Category : /System/Security/Audit/J2EE
Location : com.sap.engine.services.security.roles.SecurityRoleImpl
Application : sap.com/irj
Thread : Thread[Thread-54,5,SAPEngine_Application_Thread[impl:3]_Group]
Datasource : 1193643286133:/usr/sap/EP0/DVEBMGS00/j2ee/cluster/server0/log/defaultTrace.trc
Message ID : 001125C013B40061000030C70071607A00043D9CA9B17F21
Source Name : com.sap.engine.services.security.roles.SecurityRoleImpl
Argument Objs : ACCESS.ERROR,SAP-J2EE-Engine,administrators,
Arguments : ACCESS.ERROR,SAP-J2EE-Engine,administrators,
Dsr Component :
Dsr Transaction : 0c229a6085c811dc8856001125c013b4
Dsr User :
Indent : 0
Level : 0
Message Code :
Message Type : 1
Relatives : /System/Security/Audit/J2EE
Resource Bundlename :
Session : 3570
Source : com.sap.engine.services.security.roles.SecurityRoleImpl
ThreadObject : Thread[Thread-54,5,SAPEngine_Application_Thread[impl:3]_Group]
Transaction :
User : J2EE_GUESTHi Jan,
I have implemented these patches usage Type EP.
CAF 13.1
SAP-JEE 13.1
SAP-JEECOR 13.3
SAP_JTECHF 13.1
SAP_JTECJS 13.1
UMEADMIN 13.2
Take a look at:
Support Packages and Patches -> SAP NetWeaver -> SAP NETWEAVER -> SAP NETWEAVER 7.0 (2004S) -> Entry by Component -> Development Infrastructure
Uwe -
Hi,
I have a strange issue on a Win 7 PC with Office 2010 Pro Plus 32bit installed. All applications except Access fail to open with the following error 'The operation has been cancelled due to restrictions on your computer'.
This is whilst logged on as the domain administrator. I have seen forums mentioning this effects hyperlinks within Outlook and the fix is to make IE the default and reinstall Chrome. I have tried this to no avail.
I have tried running a repair and completely re installing Office.
Any advise would be greatly received.
Thanks
EdYou have a completely different symptoms, even though the error message is the same.
Could you please try to right click and run Office application as administrator?
If it works in this mode, this issue is caused by permission setting. Double-check whether your account gets the enough permission to read/write the C drive. If no, add your account to Administrators group or directly add the security permission for your
account on Drive C.
Thanks,
Ethan Hua CHN
TechNet Community Support -
Federated Search - Native Exception: Access is denied
Hi,
I created a Search Web Service and the corresponding Search web service and Outgoing Federated Object to use it. The service works as long as I'm logged into the Portal, but it fails for the Guest user, displaying the following error:
Error executing search on Part Search : Native exception: Access is denied. (0x80070005): [Permission to open object with ID 1 and class ID 3 denied.] (428,PTDispatch.cpp)
I've searched the Discussion Forum and Support center, but I can't find the cause of this problem, nor a solution.
Does anyone know what this error may be referring to and how to fix it?
Thanks,
JoseShawn,
Even though you map a network drive, it still remains as a logical drive(accessed using NETBEIU protocol) and you may not be able to use File commands on the network based drives. So I would suggest u to use a BufferedInputStream. -
Hola a todos
Tengo mi aplicación cliente instalada en un equipo en una red tcp/ip, y después de unos minutos me aparece este error "Exception: Access violation (0xC00000005) at EIP=0x0C1E46A1".
Alguien me podría ayudar
SaludosHola Rafa_Mata,
De hecho un error asi es un poco generico. Podrias brindar detalles del software que utilizas, que hace el programa, que toolkits utilizas, etc.
Saludos,
Eric NI -
RWRBE60.exe has generated an exception: access violation
I have a user who uses Oracle report called from a form. Several times a day she reports that she get a Dr. Watson application error saying that RWRBE60.exe has generated an exception: access violation when she invokes the report runtime (while running the report not printing it). She is running Windows NT Version 4.0, SP 6; She has 256K memory. She is running Forms 6.0.5.0.2 and Oracle Report 6.0.5.28.0. Any thoughts?
Thanks
AnandhiI've got a similar problem. I'm running windows xp and reports 6.0.8.22 including Patch 13. I don't get the same error, but the RWRBE60.exe stops with a problem. That only occurs by using reports where the parameters are variable and only by the second time I call such a report. If I close the RWRBE60.exe after the first report that probem doesn't occur. Maybe you could check, whether the problem doesn't occur if you close RWRBE60.exe between two reports.
-
Dear all,
I've created out BI system in our new Portal installation and tested the connection. Everything works fine. I added the certificate of the portal to STRUSTSSO2 in BI ABAP and assigned SAP_ALL and SAP_NEW to my Account.in BI. If I open the iView from the portal I get a BSP Exception with the message:
The used connection by the iView is to the ABAP-Stack of the BI-system not to the JAVA-Stack. Is that correct?
BSP Exception: Der Zugriff auf die URL /irj/servlet/prt/portal/prtroot/com.sap.ip.bi.web.portal.integration.launcher;jsessionid=IDBYatWIpt_pX4uc52ChoZqMWkm1RAFW2qsA_SAP ist untersagt.
What can be the problem/reason?
Thanks!Hi Gerrit
In both places you have to provide a authorization access to the end users then only it will work. because your are already said that in SAP_All & SAP_New working fine
Back end BI system access as per the word document as pasted the link
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=7&cad=rja&uact=8&ved=0CFIQFjAG&url=http%3A%2F%2Fbasisdsp.f…
For SAP portal you have to create iview's assign the same to end user
Assigning an Authentication Scheme to an iView - User Authentication and Single Sign-On - SAP Library
Portal Authentication Infrastructure - Configuring the Portal for Initial Use - SAP Library
BR
SS -
well as the topic says I get an access denied exception. This is when I try to connect to the database
java.sql.SQLException: Access denied for user 'Java'@'localhost' (using password: YES)
I get the same problem when I try to connect with the root user.
this is the code I'm using, ignore the threads as they do not matter
devil_server.java
import java.io.*;
import java.net.MalformedURLException;
import java.net.*;
import java.sql.*;
import java.util.*;
public class devil_server
//variable types concerning userthreads
static public int uid;
static public int nou;
static public ServerSocket skanal;
public static Vector users = new Vector();
public static Vector usernames = new Vector();
public static String user;
public static String pass;
public static void main(String arg[])
try {
System.out.println("write the user used to access the mysql database with Devil Chat");
user = Keyboard.readString(); //read mysql username from keyboard
System.out.println("write the password used to access the mysql database with Devil Chat");
String pass = Keyboard.readString(); //read password for user from keyboard
uid = 0;
nou = 0; //Number Of Users
skanal = new ServerSocket(5555);
new Thread(new devil_server_user(uid)).start();
while(true)
if(uid>nou)
String buffer = "buffer";
String userl = "user";
users.add(buffer);
usernames.add(userl);
new Thread(new devil_server_user(uid)).start();
nou++;
}//end while
}/*end try*/ catch (Exception ex) {
ex.printStackTrace();
}//end catch
//con.close
} //end main
}//end classdevil_server_user.java
import java.io.*;
import java.net.MalformedURLException;
import java.net.*;
import java.util.*;
import java.sql.*;
public class devil_server_user implements Runnable
public devil_server_user (int uid){this.uid=uid;};
public int uid;
public Socket kanal;
public InetAddress ip;
public InputStream streamin;
public OutputStream streamout;
public BufferedReader bufferind;
public PrintWriter printout;
public String lastuserin;
public String userinput;
public String sip;
public int isadmin;
//variable types concerning mysql database connectivity
public Statement stmt;
//public Statement rstmt;
public ResultSet rs;
public Connection conn;
public void run()
try {
System.out.println("Listening on port 5555");
System.out.println("Waiting for clients");
kanal = devil_server.skanal.accept();
devil_server.uid++;
ip = kanal.getInetAddress();
sip = ip.toString();
sip = sip.replace("/","");
isadmin = 0;
if(sip.equals("127.0.0.1"))
isadmin = 1;
} catch (Exception ex) {
ex.printStackTrace();
try {
System.out.println("Incomming request: "+ ip);
streamin = kanal.getInputStream();
System.out.println("Input ready");
streamout = kanal.getOutputStream();
System.out.println("Output ready");
devil_server.users.set(this.uid, printout = new PrintWriter(streamout));
printout = (PrintWriter)devil_server.users.get(this.uid);
bufferind = new BufferedReader(new InputStreamReader(streamin));
catch (IOException e){
e.printStackTrace();
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/Java?user="+devil_server.user+"&password=s"+devil_server.pass);
stmt = conn.createStatement();
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
} catch (Exception e) {
e.printStackTrace();
//String request = bufferind.readLine();
//System.out.println("message from "+ip+" : "+request);
//printout.flush();
//forbindelse
try {
userinput = (String)bufferind.readLine();
} catch(Exception e) {
e.printStackTrace();
while(!userinput.startsWith("/name"))
try {
userinput = (String)bufferind.readLine();
} catch(Exception e) {
e.printStackTrace();
try
stmt = conn.createStatement();
stmt.executeUpdate("INSERT INTO devilchat_users (ip, username, isadmin) VALUES('"+sip+"',' "+userinput.substring(6)+"','"+isadmin+"')");
new Thread(new devil_server_broadcast("/say "+userinput.substring(6)+" has joined devilchat")).start();
devil_server.usernames.set(this.uid, userinput.substring(6));
printout.println("/knock"); //knocks to the client
printout.flush();
userinput = (String)bufferind.readLine();
} catch(Exception e) {
e.printStackTrace();
while(!userinput.startsWith("/knock"))
try {
userinput = (String)bufferind.readLine(); //waiting for client to knock back
} catch(Exception e) {
e.printStackTrace();
printout.println("/ready"); //tells client it's ready to read userinput
printout.flush();
int spoken = 0;
System.out.println(devil_server.usernames.get(this.uid)+": has connected");
new Thread(new devil_server_usercheck()).start();
//starter l�kke som checker for nye input fra useren
while(true)
try{
userinput = (String)bufferind.readLine();
if(!userinput.equals(lastuserin))
if(userinput.startsWith("/name"))
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery("SELECT * FROM devilchat_users WHERE uid='"+this.uid+"'");
rs.absolute(this.uid);
String oldname = rs.getString("username"); // get old name from database and save it in a string before applying the new name
stmt = conn.createStatement();
stmt.executeUpdate("UPDATE devilchat_users set username='"+userinput.substring(6)+"' WHERE uid ='"+this.uid+"'");
//start a broadcast to tell the name has changed
new Thread(new devil_server_broadcast("/namechange *** "+oldname+" has changed their name to "+userinput.substring(6)+" ***")).start();
//change the username in the vector containing usernames
devil_server.usernames.set(this.uid, userinput.substring(6));
//start a new listcheck so the list can be updated
new Thread(new devil_server_usercheck()).start();
else if(userinput.startsWith("/say"))
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery("SELECT * FROM devilchat_users WHERE uid='"+this.uid+"'");
rs.absolute(this.uid);
String sname = rs.getString("username");
String say1 = userinput.substring(6);
userinput = "/say "+sname+": "+say1;
spoken++;
stmt = conn.createStatement();
stmt.executeUpdate("UPDATE devilchat_users set spoken='"+spoken+"' WHERE uid ='"+this.uid+"'");
new Thread(new devil_server_broadcast(userinput)).start();
else if(userinput.startsWith("/quit"))
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery("SELECT * FROM devilchat_users WHERE uid='"+this.uid+"'");
rs.absolute(this.uid);
String name = rs.getString("username");
printout.println("/quit "+name+" has left devilchat"); //tells client it's ready to read userinput
printout.flush();
devil_server.usernames.set(this.uid, "user");
devil_server.users.set(this.uid, "buffer");
new Thread(new devil_server_broadcast("/quit "+name+" has left devilchat")).start();
conn.close();
kanal.close();
break;
lastuserin = userinput;
catch(Exception e) {
e.printStackTrace();
}this is the full exception handling
java.sql.SQLException: Access denied for user 'Java'@'localhost' (using password
: YES)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1056)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:957)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3376)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3308)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:894)
at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:3808)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1256)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2032)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:729)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Sou
rce)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:302)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java
:283)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at devil_server_user.run(devil_server_user.java:71)
at java.lang.Thread.run(Unknown Source)
java.lang.NullPointerException
at devil_server_user.run(devil_server_user.java:97)
at java.lang.Thread.run(Unknown Source)
I have tried the org driver too and I have tried (url, user, pass) and (url?user=user&password=pass)
Edited by: Angelwinged_Devil on Mar 13, 2008 6:04 AMwell it's pretty weird, because I'm trying to make some kind of pattern with the install file I made, although... the install file works and looks like this
import java.io.*;
import java.net.*;
import java.sql.*;
public class install
public static void main(String[] args) {
try {
// The newInstance() call is a work around for some
//older java implementations
//org.gjt.mm.mysql.Driver or com.mysql.jdbc.driver
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
} catch (Exception ex) {
ex.printStackTrace();
try {
System.out.println("write the user used to access the mysql database with Devil Chat");
String user = Keyboard.readString(); //read mysql username from keyboard
System.out.println("write the password used to access the mysql database with Devil Chat");
String pass = Keyboard.readString(); //read password for user from keyboard
Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mysql", user, pass);
Statement stmt = conn.createStatement();
stmt.executeUpdate("CREATE DATABASE IF NOT EXISTS Java");
System.out.println("Database has been created");
Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/Java", user, pass);
Statement nstmt = con.createStatement();
nstmt.executeUpdate("CREATE TABLE IF NOT EXISTS devilchat_users ("+
"uid int NOT NULL AUTO_INCREMENT, PRIMARY KEY(uid), "
+"username varchar(25), isadmin bool, spoken int, ip varchar(15))");
System.out.println("Table has been created");
con.close();
conn.close();
} catch (SQLException ex) {
// handle any errors
System.out.println("SQLException: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("VendorError: " + ex.getErrorCode() + "\n");
} -
Inhiterance:unknow down-cast exception.Access a private attrib.from subclas
Hi guys,
I need your help.
Many examples, shows that i can create a sub-class inheriting from a super-class, add methods and attributes, make something like : <subclass variable> ?= <superclass instance> and then call method of the subclass (that are able to access to protect data of superclass instance for example).
But when i try to do the same with a class derived from cl_gui_alv_grid, i have always a casting type exception in the down-cast instruction.
Example :
field-symbols: <outtab> type standard table.
data : gos_alv type ref to cl_gui_alv_grid.
* CLASS lcl_gui_alv_grid DEFINITION
class lcl_gui_alv_grid definition inheriting from cl_gui_alv_grid.
public section.
methods : get_tab_line.
endclass. "lcl_gui_alv_grid DEFINITION
* CLASS lcl_gui_alv_grid IMPLEMENTATION
class lcl_gui_alv_grid implementation.
method get_tab_line.
* mt_outtab is the data table held as a protected attribute
* in class cl_gui_alv_grid.
assign me->mt_outtab->* to <outtab>. "Original data
endmethod. "get_tab_line
endclass. "lcl_gui_alv_grid IMPLEMENTATION
data : l_alv type ref to lcl_gui_alv_grid.
But when i do a downcast like this (gos_alv was already created with "create object" istruction):
l_alv ?= gos_alv.
I have an exception of casting error. I cannot understand why and how to solve the problem.
Thank you very much for your collaboration.
AndreaHi Andrea,
I suggest you to tweak a code a litte bit as I guess the point is to get mt_outtab table, right?
CLASS lcl_gui_alv_grid DEFINITION INHERITING FROM cl_gui_alv_grid.
PUBLIC SECTION.
CLASS-METHODS get_tab_line IMPORTING o_alv TYPE REF TO cl_gui_alv_grid. "declare method as static one
ENDCLASS.
CLASS lcl_gui_alv_grid IMPLEMENTATION.
METHOD get_tab_line.
FIELD-SYMBOLS <outtab> TYPE STANDARD TABLE.
assign me->mt_outtab->* to <outtab>.
"your desired coding here
ENDMETHOD.
ENDCLASS.
Now all you need to do is to call static method get_tab_line providing your actual alv reference
data : gos_alv type ref to cl_gui_alv_grid.
CREATE OBJECT gos_alv ....
lcl_gui_alv_grid=>get_tab_line( gos_alv ).
As for your question, why this code
l_alv ?= gos_alv.
triggeres an exception cx_sy_move_cast_error .
If you use this coding
TRY.
l_alv ?= gos_alv.
CATCH.
cx_sy_move_cast_error
"system will end up here
ENDTRY.
...you would prevent the system to dump out, but the exception will be triggered anyway. You will just catch it.
The problem arises simply from fact that down cast checks wheterer these two reference variables l_alv and gos_alv are on the same level. This is why you put there question mark ? asking the system if gos_alv in fact contains appropriate reference. You can only evaluate it during program execution.
When it comes to down cast always image such situation.
You have VEHICLE class (your cl_gui_alv_grid ). The class which inherits from it is PLANE (your lcl_gui_alv_grid). Now you can always do such assingnment
VEHICLE = PLANE (cl_gui_alv_grid = lcl_gui_alv_grid) "up cast - narrow cast
but you never can do this
PLANE = VEHICLE (lcl_gui_alv_grid = cl_gui_alv_grid) "down cast
It is becasue plane is always a vehicle, but vehicle doesn't have to be a plain. It can be either a truck, ship or a plane.
Therefore for down cast you always has to ask system if VEHICLE really contains (during exection) reference to a PLANE. That's why you write it like
PLANE ?= VEHICLE (lcl_gui_alv_grid ?= cl_gui_alv_grid)
The system checks then if vehicle really contains plane reference inside.
Thought it might be not useful for first sight, it is a basis of polimorphism, but it is a talk for another time;)
Regards
Marcin -
ClassNotFound Exception accessing EJBs in a cluster
I am experiencing some weird behavior when attempting to access EJBs in a
Weblogic 5.1.0 cluster. The cluster nodes startup fine, and the EJBs are
correctly deployed. However, when my test client attempts to access them I
get the ClassNotFoundException listed below. This same client can access the
same EJBs deployed in a non-clustered environment without any problems, so
it's definitely related to my cluster configuration. The problem seems to be
that the client is not receiving the client-side stub. To confim this, I put
the stub in the client's classpath, and did NOT get the
ClassNotFoundException. Has anyone else seen this error?
BTW, I have compiled the EJB both with and without the <home-is-clusterable>
flag set to true. I get the same exception either way.
Thanks for any assistance,
Jason Donnell
javax.naming.CommunicationException. Root exception is
java.lang.ClassNotFoundException: class
com.landacorp.maxmc.ejb.security.ProviderSecurityBeanHomeImpl_ServiceStub
previously not found
at weblogic.rjvm.MsgAbbrev.read(MsgAbbrev.java:184)
at weblogic.socket.JVMAbbrevSocket.readMsgAbbrevs(JVMAbbrevSocket.java:505)
at weblogic.rjvm.MsgAbbrevInputStream.prime(MsgAbbrevInputStream.java:134)
at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:700)
at
weblogic.rjvm.ConnectionManagerClient.handleRJVM(ConnectionManagerClient.jav
a:34)
at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:630)
at weblogic.socket.JVMAbbrevSocket.dispatch(JVMAbbrevSocket.java:393)
at weblogic.socket.JVMSocketT3.dispatch(JVMSocketT3.java:355)
at weblogic.socket.JavaSocketMuxer.processSockets(JavaSocketMuxer.java:247)
at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:23)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:129)
--------------- nested within: ------------------
weblogic.rmi.UnmarshalException: Unmarshalling return
- with nested exception:
[java.lang.ClassNotFoundException: class
com.landacorp.maxmc.ejb.security.ProviderSecurityBeanHomeImpl_ServiceStub
previously not found]
at
weblogic.jndi.toolkit.BasicWLContext_WLStub.lookup(BasicWLContext_WLStub.jav
a:256)
at weblogic.jndi.toolkit.WLContextStub.lookup(WLContextStub.java:545)
at javax.naming.InitialContext.lookup(InitialContext.java:350)
at
com.landacorp.maxmc.ejb.security.ClusterSecurityTest.main(ClusterSecurityTes
t.java:52)
Just a side note: I setup the cluster using the WebLogic recommended
directory structure (see
http://www.weblogic.com/docs51/cluster/setup.html#676105) and I no longer
get the exception. I'm still interested in hearing, though, if anyone has a
scheme for setting up the cluster in a directory that isn't directly under
the weblogic installation directory.
Jason
"Jason Donnell" <[email protected]> wrote in message
news:[email protected]...
> My current idea is that our directory structure is not properly supported
by
> WebLogic. We are NOT putting everything under the weblogic install
> directory, as the documentation suggests. Instead, it looks something like
> this (on an NT box):
>
> \weblogic_install\<Weblogic 5.1.0 installation here>
>
> \our_weblogic\startWeblogicNode1.cmd
> \our_weblogic\startWeblogicNode2.cmd
> \our_weblogic\weblogic.properties (cluster-wide)
> \our_weblogic\public_html\
> \our_weblogic\our_cluster_name\
> \our_weblogic\our_cluster_name\all_ejbs\<compiled beans are here>
> \our_weblogic\our_cluster_name\server_node1\
> \our_weblogic\our_cluster_name\server_node1\weblogic.properties
> (server-specific)
> \our_weblogic\our_cluster_name\server_node2\
> \our_weblogic\our_cluster_name\server_node2\weblogic.properties
> (server-specific)
>
> So, on the command line in our per-server startup scripts, we set the
> weblogic.system.home=\our_weblogic,
weblogic.cluster.name=our_cluster_name,
> and weblogic.system.name=server_nodeX.
>
> Now, I want to emphasize that the server claims to start up just fine. It
> claims the EJBs have been deployed. However, it is unable to deliver
classes
> dynamically, as we found by trying the
> http://yourweblogic..../classes/some/class/name.class suggestion noted
> previously.
>
> We had a similar directory structure for a single server, and it worked
just
> fine. However, in that case we obviously did not have the extra level of
the
> \our_cluster_name\ directory. It would seem that in the cluster
> configuration, we cannot do it this way. I would be VERY interested to
hear
> if anyone else has setup a cluster in a directory that is not under the
> weblogic installation directory.
>
> Hopefully this may shed some light on your problem. Feel free to contact
me
> if you need any additional information (or if you solve the problem!).
>
> Jason Donnell
> [email protected]
>
>
> "Chad" <[email protected]> wrote in message
> news:[email protected]...
> > I am very interested in this thread - I am having the same behavior:
> >
> > javax.naming.CommunicationException. Root exception is
> > java.lang.ClassNotFoundException: class
> > healthecare.drug.ejb.DrugAlternateBeanHomeImpl_ServiceStub previously
> > not found
> > at weblogic.rjvm.MsgAbbrev.read(MsgAbbrev.java:181)
> > at
> weblogic.socket.JVMAbbrevSocket.readMsgAbbrevs(JVMAbbrevSocket.java:505)
> > at
weblogic.rjvm.MsgAbbrevInputStream.prime(MsgAbbrevInputStream.java:134)
> > at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:630)
> > at
>
weblogic.rjvm.ConnectionManagerClient.handleRJVM(ConnectionManagerClient.jav
> a:34)
> > at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:630)
> > at weblogic.socket.JVMAbbrevSocket.dispatch(JVMAbbrevSocket.java:393)
> > at weblogic.socket.JVMSocketT3.dispatch(JVMSocketT3.java:355)
> > at
> weblogic.socket.JavaSocketMuxer.processSockets(JavaSocketMuxer.java:247)
> > at
> weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:23)
> > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:135)
> >
> > --------------- nested within: ------------------
> > weblogic.rmi.UnmarshalException: Unmarshalling return
> > - with nested exception:
> > [java.lang.ClassNotFoundException: class
> > healthecare.drug.ejb.DrugAlternateBeanHomeImpl_ServiceStub previously
> > not found]
> > at
>
weblogic.jndi.toolkit.BasicWLContext_WLStub.lookup(BasicWLContext_WLStub.jav
> a:256)
> > at weblogic.jndi.toolkit.WLContextStub.lookup(WLContextStub.java:545)
> > at javax.naming.InitialContext.lookup(InitialContext.java:350)
> > at healthecare.util.EJBBase.findHomeInterface(EJBBase.java:178)
> >
> > One additional bit of information that I can add is that when I
> > getInitialContext() like this:
> >
> > public static Context getInitialContext() throws Exception
> > {
> > String providerURL =
> > "t3://" + CommonUtil.getProperty("ejb.server.name") +
> > ":" + CommonUtil.getProperty("ejb.server.port");
> >
> > Hashtable ht = new Hashtable();
> > ht.put(Context.INITIAL_CONTEXT_FACTORY,
> > "weblogic.jndi.WLInitialContextFactory");
> > ht.put(Context.PROVIDER_URL, providerURL);
> >
> > return new InitialContext(ht);
> > }
> >
> > When the "ejb.server.name" property is one server, like "serverName1",
> > the code works. But when the "ejb.server.name" property is clustered,
> > like "serverName1, serverName2", the code throws the exception above.
> >
> > I'll definitely re-post if I come up with anything.
> >
> > thanks,
> > chad small
> >
> > "Jason Donnell" <[email protected]> wrote in message
> news:<[email protected]>...
> > > Well, that was a good test. I discovered I am unable to download
classes
> > > from the clustered server when pointing my browser at it. Any ideas
what
> > > kind of misconfiguration on my part would cause that behavior?
> > >
> > > Thanks,
> > > Jason Donnell
> > >
> > > "Dimitri Rakitine" <[email protected]> wrote in message
> > > news:[email protected]...
> > > > Try to point your browser to make sure you can actually download
> classes
> > > from it
> > > > (point it to http://yourweblogic..../classes/some/class/name.class)
> > > >
> > > > Jason Donnell <[email protected]> wrote:
> > > > > Yes, I know. That's the behavior that I had always seen before. Do
> you
> > > know
> > > > > of any directory configurations or properties file settings that
> could
> > > make
> > > > > the stub not be downloaded correctly, even though the EJB is
> deployed on
> > > the
> > > > > server?
> > >
> > > > > "Tao Xie" <[email protected]> wrote in message
> > > > > news:[email protected]...
> > > > >> That's weird, Replica-aware stub should be downloaded to the
client
> > > except
> > > > >> the client is on another Weblogic server.
> > > > >>
> > > > >> "Jason Donnell" <[email protected]> wrote in message
> > > > >> news:[email protected]...
> > > > >> | I am experiencing some weird behavior when attempting to access
> EJBs
> > > in
> > > a
> > > > >> | Weblogic 5.1.0 cluster. The cluster nodes startup fine, and the
> EJBs
> > > are
> > > > >> | correctly deployed. However, when my test client attempts to
> access
> > > them
> > > I
> > > > >> | get the ClassNotFoundException listed below. This same client
can
> > > access
> > > the
> > > > >> | same EJBs deployed in a non-clustered environment without any
> > > problems,
> > > so
> > > > >> | it's definitely related to my cluster configuration. The
problem
> > > seems
> > > to
> > > be
> > > > >> | that the client is not receiving the client-side stub. To
confim
> > > this, I
> > > put
> > > > >> | the stub in the client's classpath, and did NOT get the
> > > > >> | ClassNotFoundException. Has anyone else seen this error?
> > > > >> |
> > > > >> | BTW, I have compiled the EJB both with and without the
> > > <home-is-clusterable>
> > > > >> | flag set to true. I get the same exception either way.
> > > > >> |
> > > > >> | Thanks for any assistance,
> > > > >> | Jason Donnell
> > > > >> |
> > > > >> |
> > > > >> | javax.naming.CommunicationException. Root exception is
> > > > >> | java.lang.ClassNotFoundException: class
> > > > >> |
> > > > >
> > >
> com.landacorp.maxmc.ejb.security.ProviderSecurityBeanHomeImpl_ServiceStub
> > > > >> | previously not found
> > > > >> |
> > > > >> | at weblogic.rjvm.MsgAbbrev.read(MsgAbbrev.java:184)
> > > > >> |
> > > > >> | at
> > > > >>
> > >
> weblogic.socket.JVMAbbrevSocket.readMsgAbbrevs(JVMAbbrevSocket.java:505)
> > > > >> |
> > > > >> | at
> > >
weblogic.rjvm.MsgAbbrevInputStream.prime(MsgAbbrevInputStream.java:134)
> > > > >> |
> > > > >> | at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:700)
> > > > >> |
> > > > >> | at
> > > > >> |
> > > > >>
> > > > >
> > >
>
weblogic.rjvm.ConnectionManagerClient.handleRJVM(ConnectionManagerClient.jav
> > > > >> | a:34)
> > > > >> |
> > > > >> | at
> > > weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:630)
> > > > >> |
> > > > >> | at
> > > weblogic.socket.JVMAbbrevSocket.dispatch(JVMAbbrevSocket.java:393)
> > > > >> |
> > > > >> | at weblogic.socket.JVMSocketT3.dispatch(JVMSocketT3.java:355)
> > > > >> |
> > > > >> | at
> > > > >>
> > >
> weblogic.socket.JavaSocketMuxer.processSockets(JavaSocketMuxer.java:247)
> > > > >> |
> > > > >> | at
> > > > >>
> > >
> weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:23)
> > > > >> |
> > > > >> | at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:129)
> > > > >> |
> > > > >> |
> > > > >> |
> > > > >> | --------------- nested within: ------------------
> > > > >> |
> > > > >> | weblogic.rmi.UnmarshalException: Unmarshalling return
> > > > >> | - with nested exception:
> > > > >> | [java.lang.ClassNotFoundException: class
> > > > >> |
> > > > >
> > >
> com.landacorp.maxmc.ejb.security.ProviderSecurityBeanHomeImpl_ServiceStub
> > > > >> | previously not found]
> > > > >> |
> > > > >> | at
> > > > >> |
> > > > >>
> > > > >
> > >
>
weblogic.jndi.toolkit.BasicWLContext_WLStub.lookup(BasicWLContext_WLStub.jav
> > > > >> | a:256)
> > > > >> |
> > > > >> | at
> > > weblogic.jndi.toolkit.WLContextStub.lookup(WLContextStub.java:545)
> > > > >> |
> > > > >> | at javax.naming.InitialContext.lookup(InitialContext.java:350)
> > > > >> |
> > > > >> | at
> > > > >> |
> > > > >>
> > > > >
> > >
>
com.landacorp.maxmc.ejb.security.ClusterSecurityTest.main(ClusterSecurityTes
> > > > >> | t.java:52)
> > > > >> |
> > > > >> |
> > > > >> |
> > > > >> |
> > > > >>
> > > > >>
> > > >
> > > >
> > > >
> > > > --
> > > > Dimitri
>
>
>
>
>
>
-
Exception accessing ADF application deployed on Oracle Weblogic Server
Hi All,
We have a web application developed using ADF Faces, Trinidad & BC4J. The application runs fine on Oracle JDeveloper 11g (11.1.2.1.0). When I deploy the same on to remote weblogic server 10.1.3 and I access the jspx page I get the below exception:
javax.faces.el.EvaluationException: java.lang.NullPointerException
at org.apache.myfaces.trinidad.component.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:51)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:787)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1252)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._invokeApplication(LifecycleImpl.java:966)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:346)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:204)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:312)
It looks like there is some issue with the datasource. I have created a datasource WebApplicationDS with JNDI name jdbc/WebApplicationDS on the weblogic server.In the application module I have changed the datasource from java:comp/env/jdbc/WebApplicationDS to jdbc/WebApplicationDS before deploying on to WLS. With the current setting if I run from JDeveloper I get the same error.
Please let me know how to resolve this issue.
Thanks in advance.
Regards
NavinHi Frank,
That is were the issue started, I have created the datasource with the name WebApplicationDS and JNDI name as jdbc/WebApplicationDS and when I acess the application I get the below error:
javax.faces.el.EvaluationException: java.lang.NullPointerException
at org.apache.myfaces.trinidad.component.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:51)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:787)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1252)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._invokeApplication(LifecycleImpl.java:966)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:346)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:204)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:312)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:27)
Thanks
Navin -
Oracle GoldenGate Veridata Exception (access denied)
Hello all,
I have recently installed weblogic 12.1.3 and Goldengate Veridata server on a Linux box successfully, and then successfully created a domain server to administer Veridata. After opening Veridata Web console with the newly created User from Weblogic Server that has all the privileges of veridata administration, in the new connection wizard, veridata shows following exception.
OGGV-00184: Error message: com.goldengate.wallet.WalletException: OGGV-80002: Put credential for CONN..IRIS2 failed: access denied ("oracle.security.jps.service.credstore.CredentialAccessPermission" "context=SYSTEM,mapName=VERIDATA,keyName=CONN.IRIS2" "write").You have the wrong java version which i suppose is java8 which is not supported for 12c yet so downgrade to java 7. Not sure what flavour your OS is I used this How to Install Java 7 (Jdk 7u75) on CentOS/RHEL 7/6/5 and downgraded java restarted my weblogic and everything worked as expected.
-
Exception accessing portal over web dispatcher
Hello experts,
We are facing issue while accessing portal over web dispatcher on IE (7 & 8).
We get following exception when we try to load any WebDynpro IView (both standard and custom)
com.sap.tc.webdynpro.services.sal.deployment.core.ClassLoaderException: Classloader of 'sap.com/pb' is null, even though application is started.
We are able to execute the application in following ways though
1. Accessing the portal directly bypassing webdispatcher
2. Using Mozilla Firefox browser to access the webdispatcher URL.
Please guide what is missing from the configuration perspective to make it work on IE.
Appreciate the responses.
Thanks
AshutoshYes
ERROR => shmget(15162,744864600,480) (22: Invalid argument) [shmux_mt.c 1501]
[Thr 2199027274608] *** ERROR => ShmCreate( ATTACH 62, 744864600) failed 1 [mpixx_mt.c 1061]
[Thr 2199027274608] *** ERROR => IcmBufInit: MpiInit failed (rc=1) [icxxbuf_mt.c 189]
[Thr 2199027274608] *** ERROR => IcmInit: IcmBufInit failed (rc=1) [icxxrout_mt. 2024]
We have 4 GB of SWAP memory and 4GB of the main memory available.
Ashutosh -
Exception access violation using jlong instead of jint
Hi,
I hope you can help me.
I'm using Java5 under Windows XP and I'm developing under Eclipse.
I try to use an "old" c-Application accesed via JNI.
Status Quo is that, I have access to the c-side, over my JNI-conform DLL. My current task is to translate the c-side structs to java-objects. This also works, but only with limitation.
Calling methods bidirectional is working, manipulation a java-object is like a walk on an warm and sunny Saturday afternoon.
But I'm not able to use all possible parameters (for now I have tried to use jobject, jstring, jint, jboolean, jlong).
The first problem I had, were using Strings as parameters, but this now I deal with the loopway over java/lang/object (using java/lang/String results in an access_violation).
The next problem, and the harder one, is, that I cannot use the type long or jlong.
int (jint) is no problem, with int all works fine, but if I change the environment, creating and using long, I allways get an the access_violation shown below.
Is there anything, I need to know?
working c-side-code:
jobject someObject;
jint anIntegerValue;
anIntegerValue =5;
jmethodID mid3 = (*env)->GetMethodID(env, cl, "initReturnSomeObject", "(ILjava/lang/Object;)Ljava/lang/Object;");
if(mid3 == (jmethodID)0) printf("\ndooofes MethodName4!\n");
else {
const char* myParams;
myParams = "ooooohwow!!!";
someObject = (*env)->CallObjectMethod(env, jobj, mid3,
anIntegerValue, (*env)->NewStringUTF(env, myParams));
}wokring java-side-code
public Object initReturnSomeObject(int i, Object obj) {
String s = (String)obj;
System.out.println("String: "+s+"\nInteger: "+i);
some = new SomeObject(s,i);
if(some==null) System.out.println("Some is not yet initialized, FEAR!!!!\n");
else System.out.println("Yoh, I'm soooo many good!! \nSome:\nString: "+some.getS1()+"\nInt: "+some.getI1()+"\n");
return (Object)some;
so, und this code, doesn't work. you can see, the changes are dramatically!! ;)
sorry for my sarcasm. I do not know, why it doesn't work.
jlong aLongValue;
aLongValue = 2;
jmethodID mid3 = (*env)->GetMethodID(env, cl, "initReturnSomeObject", "(JLjava/lang/Object;)Ljava/lang/Object;");
if(mid3 == (jmethodID)0) printf("\ndooofes MethodName4!\n");
else {
const char* myParams;
myParams = "ooooohwow!!!";
someObject = (*env)->CallObjectMethod(env, jobj, mid3,
aLongValue, (*env)->NewStringUTF(env, myParams));
public Object initReturnSomeObject(long i, Object obj) {
String s = (String)obj;
System.out.println("String: "+s+"\nInteger: "+i+"\nLong: ");
some = new SomeObject(s,(int)i);
if(some==null) System.out.println("Some is not yet initialized, FEAR!!!!\n");
else System.out.println("Yoh, I'm soooo many good!! \nSome:\nString: "+some.getS1()+"\nInt: "+some.getI1()+"\n");
return (Object)some;
# An unexpected error has been detected by Java Runtime Environment:
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6d942975, pid=1784, tid=1648
# Java VM: Java HotSpot(TM) Client VM (1.6.0_03-b05 mixed mode, sharing)
# Problematic frame:
# V [jvm.dll+0x182975]
# An error report file with more information is saved as hs_err_pid1784.log
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
#do you need some other informations or details? something out of the log-file? ok, i have to take the bus, so sorry for uncomplete informations or sentences ;)
till later.Hi,
I'm quite sure, the signature is correct. For failure check, yesterday I ran javap to check the signature, but I do also mean, that I changed the signature afterwards for several time. And, it works ;) at least the way, using Integer.
Trying to use java/lang/String everytime I got the Error, that the method could not be found - this is the part, I was wrong in my description. So the error-Message is a different one.
Belonging to the question for assumptions I made... it's difficult. I'm quite new to JNI, so, I don't know, what I can assume to do. The Method call seems to be a kind of reflection-mechanism. So I assume that the behaviour is similar. But reflection I'm not very firm, either ^^.
What I do assume is, that the parameter-value J fits to the java-type jlong. But a work around on this, I will try today. getting the jlong into an char* or using long instead of jlong or using Ljava/lang/Long; or a casted Long as Ljava/lang/Object; ...
I'm anxious to the ideas, I will have, bypassing this point. if there is no way, I will write a file, send a email or something like this ;)
Thx for thinking about my problem jschel!! It's great not to be alone.
John
Maybe you are looking for
-
How can i disable a Struts radio based on other element form
I need some help to do this. I saw some examples in the web to disable a radio button with javascript, and all is right with normal HTML tags. But when i was try to do the same over Struts code it's not function. I show below my code: function habili
-
Installing Solaris 10 1/06
Hi, i have a problem installing Solaris 10 1/06. My md5sum for the DVD image is 3993081fd5d8cde9c065f5ff584a8d17 I get the following error after configuring the disks: Exiting (caught signal 4) Type install-solaris to restart. Solaris installation pr
-
Oracle Business Rules with BPM
Hi Please explain how to use Oracle Business Rules in Oracle BPM enterprise and Oracle BPM studio. Also please provide links for documents if available. Thanks in advance
-
What is error code "post/16/2048 DIMM0/J22"?
What is error code "post/16/2048 DIMM0/J22"? I'm thinking that may be why my startup sound isn't working Thanks, Mittens131 Using An iMac G4 (Flat Screen)
-
Aperture 2 Hangs on Launch!
As my machine model shows, Aperture 2 is as far as it will ever be able to upgrade, so I'm stuck with whatever latest release there is for Aperture 2. After I've started a resource-intensive task, and sometimes when I haven't, when I try and launch A