NullPointerException in JDWP during HotSwap
I'm developing an application that needs to redefine classes at runtime, for which I'm using the HotSwap feature of the Sun JVM. I've written a HotSwap class that conects the application to itself via the SharedMemoryTransportService, obtains the VirtualMachine instance for the JVM and contains this method for swapping a single class:
public void swap(String className, byte[] classBytes) throws IOException {
Map<ReferenceType, byte[]> classDefinitions = new HashMap<ReferenceType, byte[]>();
classDefinitions.put(getReferenceType(className, vm), classBytes);
vm.redefineClasses(classDefinitions);
I then wrote a load of tests that take various classes and insert lines of code at the top of their methods. Most of these seemed to pass fine, with the inserted code executing successfully, but some caused the following NullPointerException to occur:
java.lang.NullPointerException
at com.sun.tools.jdi.JDWP$VirtualMachine$RedefineClasses$ClassDef.write(JDWP.java:1473)
at com.sun.tools.jdi.JDWP$VirtualMachine$RedefineClasses$ClassDef.access$300(JDWP.java:1452)
at com.sun.tools.jdi.JDWP$VirtualMachine$RedefineClasses.enqueueCommand(JDWP.java:1508)
at com.sun.tools.jdi.JDWP$VirtualMachine$RedefineClasses.process(JDWP.java:1490)
at com.sun.tools.jdi.VirtualMachineImpl.redefineClasses(VirtualMachineImpl.java:289)
at com.sun.tools.jdi.HotSwap.swap(HotSwap.java:71)
at uk.ac.ic.doc.cuXca.persistence.core.persistencehandlers.ObjectClassEnhancer.enhance(ObjectClassEnhancer.java:92)
... my classes
For ages I thought that I was generating incorrect bytecode, but then I noticed that the majority of these exceptions disappeared if I made sure an instance of the swapped class existed before the swap (by adding a call to Class.newInstance()). However, some of my tests still throw the above exception and I'm confused as to why. To make matters worse, it seems to be caused by some kind of race condition, because different tests fail each time. My test code is not multithreaded, and I'm certain that the code I'm generating is valid. The whole newInstance thing makes me think that sometimes the classes have not been resolved prior to the swap. Has anyone who has used hotswapping before had any experience of this exception and been able to fix it?
The following tests produce some interesting results (each block is a separate run and enhance(..) is my method for altering the given class and swapping it):
enhance(A.class); // fails with NullPointerException
A a = new A();
enhance(A.class); // succeeds
A a = new A();
enhance(A.class); // succeeds
enhance(B.class); // fails
A a = new A();
enhance(A.class); // succeeds
B b = new B();
enhance(B.class); // fails with NullPointerException
A a = new A();
B b = new B();
enhance(A.class); // succeeds
enhance(B.class); // succeeds
From these, it seems to be that all classes to be swapped must be loaded before the first swap occurs, however then I found the following:
A a = new A();
enhance(A.class); // succeeds
B b = new B();
enhance(B.class); // fails with NullPointerException
C c = new C();
enhance(C.class); // fails with NullPointerException
A a = new A();
enhance(A.class); // succeeds
B b = new B();
C c = new C();
enhance(B.class); // fails with NullPointerException
enhance(C.class); // succeeds
Here swapping C succeeds if it was loaded before the swap of B failed! I'm guessing the state of whether classes have been loaded or not is being cached and only being refreshed on the first swap (when the connection to the JVM is first made) and when the exception occurs. Unfortunately I can't rely on loading all my classes before the first swap since I'm swapping user classes that I have no control over.
Any help greatly appreciated!
Similar Messages
-
NullPointerException in ADF Swing bassed application
Hello, i have an ADF Swing based application. In close window events of JFrames it executes the next code:
frameInstance.panelBinding.releaseDataControl(); //1
frameInstance.dispose(); //2
frameInstance = null; //3
Where frameInstance is a static reference to the current JFrame object and panelBinding is the reference to the JUPanelBinding autogenerated by the framework.
When line number 2 is executed it throws a NullPointerException:
Exception occurred during event dispatching:
java.lang.NullPointerException
at oracle.jbo.uicli.binding.JUCtrlAttrsBinding$mySetEnabledThread.run(JUCtrlAttrsBinding.java:48)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:141)
at java.awt.Dialog$1.run(Dialog.java:540)
at java.awt.Dialog.show(Dialog.java:561)
at javax.swing.JOptionPane.showOptionDialog(JOptionPane.java:840)
at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:642)
at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:613)
at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:584)
at s.arcadeconsultores.impl.errors.AcErrorHandler.reportException(AcErrorHandler.java:164)
at es.arcadeconsultores.arcges.view.FrmEscaladosPedidoCliente.visualizar(FrmEscaladosPedidoCliente.java:597)
...Somebody knows what is the problem?
Thanks.Thanks for your help Frank. I've changed and invoque methods this way:
getPanelBinding().releaseDataControl();
dispose();
Now, its works but when executes the _popupTransactionDialog() method (caused trying to exit whitout save changes, and then appears the "Commit Rollback Window") the Exception appears again. I've commented the panelBinding.releaseDataControl() line and the NullPointerException dissapear... -
Have problem in install!!! Urgent!!! Help!!!
Runtime exception during validation of variable :nValidationPortListSelect
java.lang.NullPointerException
Runtime exception during validation of variable :nValidationInstanceInfo
java.lang.NullPointerException
java.util.zip.ZipException: invalid entry CRC (expected 0x67aa7f54 but got 0x42cd673e)
What could be the problem? Help me it is urgent?First of all, would you mind sharing the details of your installation? OS, Oracle version etc.?
java.util.zip.ZipException: invalid entry CRC (expected 0x67aa7f54 but got 0x42cd673e)
Looks like a possibly corrupt download. -
Problems running avctl after successfull installation of audit vault
Hi all,
after successful installation of audit vault, I am able to connect to the instance AV with sqlplus and with the dabase console.
But starting the avctl or questioning the status of the avctl with "avctl show_av_status", I always receive the following error:
C:\oracle\product\10.2.2\av_1\jdk\bin>avctl start_av
Exception in thread "main" java.lang.Exception: Invalid Oracle JDBC url
at oracle.av.avca.CommandArguments.setOracleProperties(CommandArguments.java:281)
at oracle.av.avca.CommandArguments.processArguments(CommandArguments.java:667)
at oracle.av.avca.Avctl.startCTL(Avctl.java:70)
at oracle.av.avca.Avctl.main(Avctl.java:318)
OS: Windows XP Prof 5.1 SP2
Audit Vault DB-Version: 10.2.0.3
Had anybody faced this problem before?
Thanks a lot in advance for your answers
StefanI had the same error, On the OUI log there was an error on the instalation of the Database Vault (although the installation finished OK), check if you have the same error output:
<LOG>
MANAGE_INSTANCE start RDBMS result=C:\oracle\product\10.2.2\av_1\bin\dvca_start_rdbms.bat,1,
Executing task SQLPLUS_CATMAC
connect SYS:java.sql.SQLException: ORA-01031: insufficient privileges
Executing task UNLOCK_DVSYS
Error executing task UNLOCK_DVSYS:java.lang.NullPointerException
Executing task LOAD_NLS_FILES
Error executing task LOAD_NLS_FILES:java.lang.NullPointerException
Executing task ACCOUNT_CREATE_OWNER
Error executing task ACCOUNT_CREATE_OWNER:java.lang.NullPointerException
Executing task GRANT_CONNECT_OWNER
Error executing task GRANT_CONNECT_OWNER:java.lang.NullPointerException
Executing task GRANT_ADMIN_DB_TRIG
Error executing task GRANT_ADMIN_DB_TRIG:java.lang.NullPointerException
Executing task GRANT_ALTER_ANY_TRIG
Error executing task GRANT_ALTER_ANY_TRIG:java.lang.NullPointerException
Executing task ACCOUNT_CREATE_MANAGER
Error executing task ACCOUNT_CREATE_MANAGER:java.lang.NullPointerException
Executing task GRANT_CONNECT_MANAGER
Error executing task GRANT_CONNECT_MANAGER:java.lang.NullPointerException
Executing task PASSWORD_CHANGE_DVSYS
Error executing task PASSWORD_CHANGE_DVSYS:java.lang.NullPointerException
Executing task PASSWORD_CHANGE_DVF
Error executing task PASSWORD_CHANGE_DVF:java.lang.NullPointerException
Unable to login to SYS account.. java.sql.SQLException: ORA-01031: insufficient privileges
. Error during post-installation processing. java.lang.NullPointerException. Error during post-installation processing. java.lang.NullPointerException.
</LOG>
Looks like the problem was that I changed sys and system password on the dbca final windows, that maybe wronged the instalation scripts.
When re-installed the AV Server I just press ok on that window without changing any password and it worked.
Hope that Helps.
Alfonso Leon -
Static array has to be static but cant be. AGH
I'm completely stuck on this. I have two classes ChatClient and ChatClientListenThread. On ChatClient I have an enter button(enters text into chat) and an exit button(closes connection to server). I have to have the array as static, to pull it into actionPerformed. When I do that, it returns
keysArray[0] = new Button("Enter");
keysArray[1] = new Button("Exit");
with NullPointerException: null. During run time.
If there's a statement to make it.. not null which I think is the only way I can get this to work.
If I don't have it static, In the actionPerformed It returns
if(e.getSource() == ChatClient.keysArray)
with non-static variable keysArray cannot be referenced from a static context.
Here is all of my code for ChatClient, you'll need to set up just an empty class named ChatClientListenThread to get it to compile.
import java.io.*;
import java.awt.event.*;
import java.awt.*;
import java.net.*;
public class ChatClient extends Frame implements ActionListener
public static TextArea chatArea;
public TextArea nameArea;
public TextField chatField;
public Button enterButton;
public Button exitButton;
private static String message;
private Panel keyPanel;
private static Button keysArray[];
public boolean foundkeySwitch;
public boolean blankSwitch;
public static boolean listenSwitch;
static Socket s;
static DataInputStream user_in = null;
static DataOutputStream s_out = null;
static String stringToSend;
static ChatClientListenThread listeningThread;
public ChatClient()
chatField = new TextField(10);
chatArea = new TextArea("Enter your name: \n", 10, 10);
nameArea = new TextArea(10,15);
keysArray[0] = new Button("Enter");
keysArray[1] = new Button("Exit");
for(int i=0; i < keysArray.length; i++)
keyPanel.add(keysArray);
for(int i=0; i < keysArray.length; i++)
keysArray[i].addActionListener(this);
nameArea.setEditable(false);
chatArea.setEditable(false);
setLayout(new BorderLayout());
add(chatArea, BorderLayout.CENTER);
add(keyPanel, BorderLayout.EAST);
add(chatField, BorderLayout.SOUTH);
add(enterButton, BorderLayout.WEST);
addWindowListener(
new WindowAdapter()
public void windowClosing(WindowEvent e)
System.exit(0);
public void actionPerformed(ActionEvent e)
foundkeySwitch = (false);
for (int i = 0; i < 2 && !foundkeySwitch; i++)
if(e.getSource() == ChatClient.keysArray[i])
foundkeySwitch = true;
switch(i)
case 0:
try
stringToSend = chatField.getText();
s_out.writeUTF(stringToSend);
stringToSend="";
stringToSend = chatField.getText();
chatField.setText("");
chatField.requestFocus();
s_out.writeUTF(stringToSend);
chatField.setText("");
chatField.requestFocus();
catch (IOException ee)
chatArea.setText("Error while writing : " + ee);
break;
case 1:
listeningThread.stop();
break;
public static void main(String args[])
ChatClient guiChat = new ChatClient();
guiChat.setBounds(50,100,600,600);
guiChat.setTitle("Chat");
guiChat.setVisible(true);
//Create a new socket
try
s = new Socket("localhost", 4554);
s_out = new DataOutputStream( s.getOutputStream() );
user_in = new DataInputStream( System.in );
//Listening Thread
listeningThread = new ChatClientListenThread(s);
listeningThread.start();
listenSwitch = (false);
try
//wait for listening
Thread.currentThread().sleep(500);
} catch (InterruptedException ee) { }
catch (IOException ee)
chatArea.setText("Error while writing : " + ee);
//System.err.flush();move the code from the main method into the contructor.
That should get rid of the "cannot access nonstatic variable from static context".
Common problem - y don't you search the forum u ..^%^&%^$&!!! -
Java error when creating Auto Reply in iMS52&iDS51
Hi,
I have installed iDS51, patch with ims_dssetup.pl, installed iMS52. When creating user with a mail account and clicking on the Auto Reply tab, encounter java error:
PageUI exception: java.lang.NullPointerException
PageUI exception: java.lang.NullPointerException
PageUI exception: java.lang.NullPointerException
Exception occurred during event dispatching:
java.lang.NoSuchMethodError
at com.netscape.page.TOGGLEPANEeditor$ToggleBorder.paintBorder(TOGGLEPANEeditor.java:317)
at javax.swing.JComponent.paintBorder(JComponent.java:549)
at javax.swing.JComponent.paint(JComponent.java:688)
at javax.swing.JComponent.paintChildren(JComponent.java:498)
at javax.swing.JComponent.paint(JComponent.java:696)
at javax.swing.JComponent.paintChildren(JComponent.java:498)
at javax.swing.JComponent.paint(JComponent.java:696)
at javax.swing.JComponent.paintChildren(JComponent.java:498)
at javax.swing.JComponent.paint(JComponent.java:696)
at javax.swing.JViewport.paint(JViewport.java:668)
at javax.swing.JComponent.paintChildren(JComponent.java:498)
at javax.swing.JComponent.paint(JComponent.java:696)
at javax.swing.JComponent.paintChildren(JComponent.java:498)
at javax.swing.JComponent.paint(JComponent.java:696)
at javax.swing.JComponent.paintChildren(JComponent.java:498)
at javax.swing.JComponent.paint(JComponent.java:696)
at javax.swing.JComponent.paintWithBuffer(JComponent.java:3878)
at javax.swing.JComponent._paintImmediately(JComponent.java:3821)
at javax.swing.JComponent.paintImmediately(JComponent.java:3672)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:370)
at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:124)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:154)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:337)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:131)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:98)
at java.awt.Dialog.show(Dialog.java:380)
at com.netscape.management.client.util.AbstractDialog.show(AbstractDialog.java:352)
at com.netscape.management.client.util.AbstractDialog.showModal(AbstractDialog.java:378)
at com.netscape.management.client.topology.ug.EditUserGroupPane.createEntry(EditUserGroupPane.java:668)
at com.netscape.management.client.topology.ug.EditUserGroupPane.actionPerformed(EditUserGroupPane.java:551)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1450)
at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1504)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:378)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:250)
at javax.swing.AbstractButton.doClick(AbstractButton.java:279)
at javax.swing.plaf.basic.BasicMenuItemUI$MouseInputHandler.mouseReleased(BasicMenuItemUI.java:886)
at java.awt.Component.processMouseEvent(Component.java:3715)
at java.awt.Component.processEvent(Component.java:3544)
at java.awt.Container.processEvent(Container.java:1164)
at java.awt.Component.dispatchEventImpl(Component.java:2593)
at java.awt.Container.dispatchEventImpl(Container.java:1213)
at java.awt.Component.dispatchEvent(Component.java:2497)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:2451)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:2216)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:2125)
at java.awt.Container.dispatchEventImpl(Container.java:1200)
at java.awt.Window.dispatchEventImpl(Window.java:926)
at java.awt.Component.dispatchEvent(Component.java:2497)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:339)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:131)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:98)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:85)Hi,
Is your system a dual stack (ABAP+JAVA)? In that case the ABAP stack will be the master. You can check if it's an ABAP data source if you go to UME >> Configuration >> Data Sources
Regards,
Vit
More info in thread: How to create Roles in UME (ABAP+JAVA stack)
Edited by: Vit Vesely on Apr 10, 2010 9:28 PM -
Problems with VA Java Visual Composition
Hi!
I have some problems with reopening (even simple) visually in VA Java created
beans (JFrame, JDialog). IDE behaves somehow unpredictable. Sometimes it reopened it into the
visual composition editor, anothe time the reoppening fails with following log message:
Java exception during layout of bean(<unnamed>): java.lang.NullPointerException
Java exception during layout of bean(JFrameContentPane): java.lang.NullPointerException
An exception occurred in a system program.
Terminating TimeSlotGUI (VCE) (System) (25/07/01 10:05:07)
Can anybody help?
IvanWhich Version do you use? This VAJ 3.5 was quite bugy and you had to use patches. Now there is an Update 3.5.2 which fixes most of the bugs ( although there are new ones). When I work with the VCE ( avoid this normally) I get problems if I rename Beans which were generated with th VCE. then your stuff is lost. Sometimes you can recover if you delete the generated[i] initialize() method and then open the VCE.
Nevertheless, VAJ 3.5.3 works quite good, great debugging tools. -
Could Audit Vault Agent Support Multiple Source Database?
Hello,
May I use one agent for two or more source database?
Thank you!
Best Regards,
TonyI had the same error, On the OUI log there was an error on the instalation of the Database Vault (although the installation finished OK), check if you have the same error output:
<LOG>
MANAGE_INSTANCE start RDBMS result=C:\oracle\product\10.2.2\av_1\bin\dvca_start_rdbms.bat,1,
Executing task SQLPLUS_CATMAC
connect SYS:java.sql.SQLException: ORA-01031: insufficient privileges
Executing task UNLOCK_DVSYS
Error executing task UNLOCK_DVSYS:java.lang.NullPointerException
Executing task LOAD_NLS_FILES
Error executing task LOAD_NLS_FILES:java.lang.NullPointerException
Executing task ACCOUNT_CREATE_OWNER
Error executing task ACCOUNT_CREATE_OWNER:java.lang.NullPointerException
Executing task GRANT_CONNECT_OWNER
Error executing task GRANT_CONNECT_OWNER:java.lang.NullPointerException
Executing task GRANT_ADMIN_DB_TRIG
Error executing task GRANT_ADMIN_DB_TRIG:java.lang.NullPointerException
Executing task GRANT_ALTER_ANY_TRIG
Error executing task GRANT_ALTER_ANY_TRIG:java.lang.NullPointerException
Executing task ACCOUNT_CREATE_MANAGER
Error executing task ACCOUNT_CREATE_MANAGER:java.lang.NullPointerException
Executing task GRANT_CONNECT_MANAGER
Error executing task GRANT_CONNECT_MANAGER:java.lang.NullPointerException
Executing task PASSWORD_CHANGE_DVSYS
Error executing task PASSWORD_CHANGE_DVSYS:java.lang.NullPointerException
Executing task PASSWORD_CHANGE_DVF
Error executing task PASSWORD_CHANGE_DVF:java.lang.NullPointerException
Unable to login to SYS account.. java.sql.SQLException: ORA-01031: insufficient privileges
. Error during post-installation processing. java.lang.NullPointerException. Error during post-installation processing. java.lang.NullPointerException.
</LOG>
Looks like the problem was that I changed sys and system password on the dbca final windows, that maybe wronged the instalation scripts.
When re-installed the AV Server I just press ok on that window without changing any password and it worked.
Hope that Helps.
Alfonso Leon -
Our workset is empty when open
Hi all: We have EP7 aix sp9.
We create a workset includes the employee information.
Sometime when user choose, the workset cannot be opened, And there is exceptions in log file
Processing HTTP request to servlet [dispatcher] finished with error. The error is: java.lang.NullPointerException
at com.sap.tc.webdynpro.basesrvc.util.StringUtil.getXmlEscaped(StringUtil.java:646)
at com.sap.tc.webdynpro.clientimpl.html.client.HtmlClient.getSessionParameterHTML(HtmlClient.java:1334)
at com.sap.tc.webdynpro.clientimpl.html.client.HtmlClient.fillStaticTemplateContext(HtmlClient.java:601)
at com.sap.tc.webdynpro.clientimpl.html.client.HtmlClient.sendResponse(HtmlClient.java:1213)
at com.sap.tc.webdynpro.clientimpl.html.client.HtmlClient.retrieveData(HtmlClient.java:252)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doRetrieveData(WindowPhaseModel.java:595)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:156)
at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:299)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:711)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:665)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:232)
at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:152)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doGet(DispatcherServlet.java:46)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(AccessController.java:215)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
Processing HTTP request to servlet [dispatcher] finished with error.
The error is: java.lang.NullPointerException: null
Exception id: [001125C0839C005D0000014B000B3066000433E045063373]
An exception "java.lang.NullPointerException" has occured during application processing. During clean-up an additional exception "java.lang.IllegalStateException: The operation is not allowed. The HttpServletResponse is not associated with a client response." was thrown. The stacktraces has been written to the logfile!
[EXCEPTION]
java.lang.NullPointerException
at com.sap.tc.webdynpro.basesrvc.util.StringUtil.getXmlEscaped(StringUtil.java:646)
at com.sap.tc.webdynpro.clientimpl.html.client.HtmlClient.getSessionParameterHTML(HtmlClient.java:1334)
at com.sap.tc.webdynpro.clientimpl.html.client.HtmlClient.fillStaticTemplateContext(HtmlClient.java:601)
at com.sap.tc.webdynpro.clientimpl.html.client.HtmlClient.sendResponse(HtmlClient.java:1213)
at com.sap.tc.webdynpro.clientimpl.html.client.HtmlClient.retrieveData(HtmlClient.java:252)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doRetrieveData(WindowPhaseModel.java:595)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:156)
at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:299)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:711)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:665)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:232)
at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:152)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doGet(DispatcherServlet.java:46)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(AccessController.java:215)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)Hello Angelo,
the thread starter was logged in last in 2010. I don't think he will see and answer your question. ;)
You should open a question yourself to get help with your problem. Don't forget to explain the problem in detail, also what you already tried and checked and include the version of your systems and the log entry if the error. That should get you started. :)
Regards,
Steffi. -
Java.lang.NullPointerException thrown during application mapping
HI Experts,
Iam geeting the following Error
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Request Message Mapping
-->
- <SAP:Trace xmlns:SAP="http://sap.com/xi/XI/Message/30">
<Trace level="1" type="T">Party normalization: sender</Trace>
<Trace level="1" type="T">Sender scheme external = XIParty</Trace>
<Trace level="1" type="T">Sender agency external = http://sap.com/xi/XI</Trace>
<Trace level="1" type="T">Sender party external =</Trace>
<Trace level="1" type="T">Sender party normalized =</Trace>
<Trace level="1" type="T">Party normalization: receiver</Trace>
<Trace level="1" type="T">Receiver scheme external =</Trace>
<Trace level="1" type="T">Receiver agency external =</Trace>
<Trace level="1" type="T">Receiver party external =</Trace>
<Trace level="1" type="T">Receiver party normalized =</Trace>
<Trace level="1" type="B" name="CL_XMS_HTTP_HANDLER-HANDLE_REQUEST" />
- <!-- ************************************
-->
<Trace level="1" type="T">XMB was called with URL /sap/xi/engine?type=entry</Trace>
<Trace level="1" type="T">COMMIT is done by XMB !</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-ENTER_XMS" />
- <!-- ************************************
-->
<Trace level="1" type="B" name="CL_XMS_MAIN-SET_START_PIPELINE" />
- <!-- ************************************
-->
<Trace level="1" type="B" name="SXMBCONF-SXMB_GET_XMB_USE" />
<Trace level="1" type="B" name="CL_XMS_TROUBLESHOOT-ENTER_PLSRV" />
<Trace level="1" type="T">****************************************************</Trace>
<Trace level="1" type="T">* *</Trace>
<Trace level="1" type="T">* *</Trace>
<Trace level="1" type="T">XMB entry processing</Trace>
<Trace level="1" type="T">system-ID = BC6</Trace>
<Trace level="1" type="T">client = 001</Trace>
<Trace level="1" type="T">language = E</Trace>
<Trace level="1" type="T">user = PIAFUSER</Trace>
<Trace level="1" type="Timestamp">2007-10-24T11:58:13Z CET</Trace>
<Trace level="1" type="T">* *</Trace>
<Trace level="1" type="T">* *</Trace>
<Trace level="1" type="T">****************************************************</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_UC_EXECUTE" />
- <!-- ************************************
-->
<Trace level="1" type="T">Message-GUID = 6620A370822811DC97A800132165C741</Trace>
<Trace level="1" type="T">PLNAME = CENTRAL</Trace>
<Trace level="1" type="T">QOS = EO</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_ASYNC" />
- <!-- ************************************
-->
<Trace level="1" type="T">Get definition of external pipeline = CENTRAL</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID" />
<Trace level="1" type="T">Get definition of internal pipeline = SAP_CENTRAL</Trace>
<Trace level="1" type="T">Queue name : XBTI0003</Trace>
<Trace level="1" type="T">Generated prefixed queue name = XBTI0003</Trace>
<Trace level="1" type="T">Schedule message in qRFC environment</Trace>
<Trace level="1" type="T">Setup qRFC Scheduler OK!</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="T">Going to persist message</Trace>
<Trace level="1" type="T">NOTE: The following trace entries are always lacking</Trace>
<Trace level="1" type="T">- Exit WRITE_MESSAGE_TO_PERSIST</Trace>
<Trace level="1" type="T">- Exit CALL_PIPELINE_ASYNC</Trace>
<Trace level="1" type="T">Async barrier reached. Bye-bye !</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
- <!-- ************************************
-->
<Trace level="1" type="B" name="CL_XMS_MAIN-PERSIST_READ_MESSAGE" />
<Trace level="1" type="T">Note: the following trace entry is written delayed (after read from persist)</Trace>
<Trace level="1" type="B" name="SXMS_ASYNC_EXEC" />
- <!-- ************************************
-->
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="T">Starting async processing with pipeline CENTRAL</Trace>
<Trace level="1" type="T">system-ID = BC6</Trace>
<Trace level="1" type="T">client = 001</Trace>
<Trace level="1" type="T">language = E</Trace>
<Trace level="1" type="T">user = PIAFUSER</Trace>
<Trace level="1" type="Timestamp">2007-10-24T11:58:14Z CET</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_SYNC" />
- <!-- ************************************
-->
<Trace level="1" type="T">Get definition of external pipeline CENTRAL</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID" />
<Trace level="1" type="T">Corresponding internal pipeline SAP_CENTRAL</Trace>
- <Trace level="1" type="B" name="PLSRV_RECEIVER_DETERMINATION">
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
- <Trace level="1" type="B" name="CL_RD_PLSRV-ENTER_PLSRV">
<Trace level="1" type="T">R E C E I V E R - D E T E R M I N A T I O N</Trace>
<Trace level="1" type="T">Cache Content is up to date</Trace>
</Trace>
</Trace>
</Trace>
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST" />
- <Trace level="1" type="B" name="PLSRV_INTERFACE_DETERMINATION">
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
- <Trace level="1" type="B" name="CL_ID_PLSRV-ENTER_PLSRV">
<Trace level="1" type="T">I N T E R F A C E - D E T E R M I N A T I O N</Trace>
<Trace level="1" type="T">Cache Content is up to date</Trace>
</Trace>
</Trace>
</Trace>
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST" />
<Trace level="1" type="B" name="PLSRV_RECEIVER_MESSAGE_SPLIT" />
- <!-- ************************************
-->
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL" />
- <!-- ************************************
-->
<Trace level="1" type="B" name="CL_XMS_PLSRV_RECEIVER_SPLIT-ENTER_PLSRV" />
- <!-- ************************************
-->
<Trace level="1" type="T">number of receivers: 1</Trace>
<Trace level="1" type="T">Single-receiver split case</Trace>
<Trace level="1" type="T">Post-split internal queue name = XBTO90__0002</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="T">Persisting single message for post-split handling</Trace>
<Trace level="1" type="T" />
<Trace level="1" type="T">Going to persist message + call qRFC now...</Trace>
<Trace level="1" type="T">NOTE: The following trace entries are always lacking</Trace>
<Trace level="1" type="T">- Exit WRITE_MESSAGE_TO_PERSIST</Trace>
<Trace level="1" type="T">Async barrier reached. Bye-bye !</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
- <!-- ************************************
-->
<Trace level="1" type="B" name="CL_XMS_MAIN-PERSIST_READ_MESSAGE" />
<Trace level="1" type="T">Note: the following trace entry is written delayed (after read from persist)</Trace>
<Trace level="1" type="B" name="SXMS_ASYNC_EXEC" />
- <!-- ************************************
-->
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="T">Starting async processing with pipeline CENTRAL</Trace>
<Trace level="1" type="T">system-ID = BC6</Trace>
<Trace level="1" type="T">client = 001</Trace>
<Trace level="1" type="T">language = E</Trace>
<Trace level="1" type="T">user = PIAFUSER</Trace>
<Trace level="1" type="Timestamp">2007-10-24T11:58:14Z CET</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_SYNC" />
- <!-- ************************************
-->
<Trace level="1" type="T">Get definition of external pipeline CENTRAL</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID" />
<Trace level="1" type="T">Corresponding internal pipeline SAP_CENTRAL</Trace>
<Trace level="1" type="T">Start with pipeline element PLEL= 5EC3C53B4BB7B62DE10000000A1148F5</Trace>
<Trace level="1" type="B" name="PLSRV_MAPPING_REQUEST" />
- <!-- ************************************
-->
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV" />
- <!-- ************************************
-->
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL" />
- <!-- ************************************
-->
<Trace level="1" type="B" name="CL_MAPPING_XMS_PLSRV3-ENTER_PLSRV" />
- <!-- ************************************
-->
<Trace level="1" type="T">Interface Mapping http://atmel.com/xi/ModelN_IntegrationScenarios IM_QUOT_CRE</Trace>
<Trace level="1" type="T">RuntimeException during appliction Java mapping com/sap/xi/tf/_MM_QUOT_CRE_</Trace>
<Trace level="1" type="T">java.lang.NullPointerException at com.sap.aii.mappingtool.tf3.AMappingProgram.exceptionCaught$(AMappingProgram.java:59) at com.sap.aii.mappingtool.tf3.Transformer.checkParserException(Transformer.java:182) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:170) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:102) at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:64) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131) at sun.reflect.GeneratedMethodAccessor423.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187) at $Proxy149.processFunction(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.call(RFCDefaultRequestHandler.java:219) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:169) at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest(RFCJCOServer.java:156) at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7701) at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest(MiddlewareJRfc.java:2376) at com.sap.mw.jco.MiddlewareJRfc$Server.listen(MiddlewareJRfc.java:1700) at com.sap.mw.jco.JCO$Server.listen(JCO.java:8061) at com.sap.mw.jco.JCO$Server.work(JCO.java:8181) at com.sap.mw.jco.JCO$Server.loop(JCO.java:8128) at com.sap.mw.jco.JCO$Server.run(JCO.java:8044) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:124)</Trace>
<Trace level="1" type="T">Runtime exception occurred during execution of application mapping program com/sap/xi/tf/_MM_QUOT_CRE_: java.lang.NullPointerException; null</Trace>
<Trace level="1" type="T">com.sap.aii.ibrun.server.mapping.MappingRuntimeException: Runtime exception occurred during execution of application mapping program com/sap/xi/tf/_MM_QUOT_CRE_: java.lang.NullPointerException; null at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:73) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131) at sun.reflect.GeneratedMethodAccessor423.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187) at $Proxy149.processFunction(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.call(RFCDefaultRequestHandler.java:219) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:169) at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest(RFCJCOServer.java:156) at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7701) at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest(MiddlewareJRfc.java:2376) at com.sap.mw.jco.MiddlewareJRfc$Server.listen(MiddlewareJRfc.java:1700) at com.sap.mw.jco.JCO$Server.listen(JCO.java:8061) at com.sap.mw.jco.JCO$Server.work(JCO.java:8181) at com.sap.mw.jco.JCO$Server.loop(JCO.java:8128) at com.sap.mw.jco.JCO$Server.run(JCO.java:8044) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:124) Root Cause: java.lang.NullPointerException at com.sap.aii.mappingtool.tf3.AMappingProgram.exceptionCaught$(AMappingProgram.java:59) at com.sap.aii.mappingtool.tf3.Transformer.checkParserException(Transformer.java:182) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:170) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:102) at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:64) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131) at sun.reflect.GeneratedMethodAccessor423.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187) at $Proxy149.processFunction(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.call(RFCDefaultRequestHandler.java:219) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:169) at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest(RFCJCOServer.java:156) at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7701) at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest(MiddlewareJRfc.java:2376) at com.sap.mw.jco.MiddlewareJRfc$Server.listen(MiddlewareJRfc.java:1700) at com.sap.mw.jco.JCO$Server.listen(JCO.java:8061) at com.sap.mw.jco.JCO$Server.work(JCO.java:8181) at com.sap.mw.jco.JCO$Server.loop(JCO.java:8128) at com.sap.mw.jco.JCO$Server.run(JCO.java:8044) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:124)</Trace>
<Trace level="1" type="E">CL_XMS_PLSRV_MAPPING~ENTER_PLSRV</Trace>
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST" />
<Trace level="1" type="System_Error">Error exception return from pipeline processing!</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
- <!-- ************************************
-->
</SAP:Trace>
Plz Send solution
Regards,
venkyhi venkatesh,
as far as i see.. i feel there is some mistake in the mapping or configuration part. to be frank, i am not sure of the problem.
i suggest you to please check your design and configuration with the help of the below links:
Any flat file to any IDoc
/people/ravikumar.allampallam/blog/2005/06/24/convert-any-flat-file-to-any-idoc-java-mapping
File To IDOC - Part1 (SLD and Design):
https://www.sdn.sap.com/irj/sdn/wiki?
path=/display/profile/2007/05/11/FileToIDOC&
File To IDOC - Part2 (Configuration):
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/profile/2007/05/11/fileToIDOC-Part2+(Configuration)&
File To IDOC - Part3 (Steps required in XI and R3):
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/profile/2007/05/11/fileToIDOC-Part3(StepsrequiredinXIandR3)&
you can reply on the thread and would be there to help you -
NullPointerException during UnitOfWork commit
During UnitOfWork commit the following exception is thrown:
LOCAL EXCEPTION STACK:
EXCEPTION [TOPLINK-69] (TopLink - 9.0.3 (Build 423)): oracle.toplink.exceptions.DescriptorException
EXCEPTION DESCRIPTION: A NullPointerException was thrown while extracting a value from the instance variable [id] in the object [ClassB].
INTERNAL EXCEPTION: java.lang.NullPointerException
MAPPING: oracle.toplink.mappings.DirectToFieldMapping[id-->DatabaseField(B_TABLE.Id)]
DESCRIPTOR: Descriptor(ClassB --> [DatabaseTable(B_TABLE)])
at oracle.toplink.exceptions.DescriptorException.nullPointerWhileGettingValueThruInstanceVariableAccessor(Unknown Source)
at oracle.toplink.internal.descriptors.InstanceVariableAttributeAccessor.getAttributeValueFromObject(Unknown Source)
at oracle.toplink.mappings.DatabaseMapping.getAttributeValueFromObject(Unknown Source)
at oracle.toplink.mappings.DirectToFieldMapping.iterate(Unknown Source)
at oracle.toplink.internal.descriptors.ObjectBuilder.iterate(Unknown Source)
at oracle.toplink.internal.descriptors.DescriptorIterator.iterateReferenceObjects(Unknown Source)
at oracle.toplink.internal.descriptors.DescriptorIterator.startIterationOn(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.discoverUnregisteredNewObjects(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.discoverAllUnregisteredNewObjects(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.assignSequenceNumbers(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.collectAndPrepareObjectsForCommit(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.commitToDatabase(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.commitRootUnitOfWork(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.commit(Unknown Source)
at Main.main(Main.java:33)
INTERNAL EXCEPTION STACK:
java.lang.NullPointerException
at oracle.toplink.internal.descriptors.InstanceVariableAttributeAccessor.getAttributeValueFromObject(Unknown Source)
at oracle.toplink.mappings.DatabaseMapping.getAttributeValueFromObject(Unknown Source)
at oracle.toplink.mappings.DirectToFieldMapping.iterate(Unknown Source)
at oracle.toplink.internal.descriptors.ObjectBuilder.iterate(Unknown Source)
at oracle.toplink.internal.descriptors.DescriptorIterator.iterateReferenceObjects(Unknown Source)
at oracle.toplink.internal.descriptors.DescriptorIterator.startIterationOn(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.discoverUnregisteredNewObjects(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.discoverAllUnregisteredNewObjects(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.assignSequenceNumbers(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.collectAndPrepareObjectsForCommit(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.commitToDatabase(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.commitRootUnitOfWork(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.commit(Unknown Source)
at Main.main(Main.java:33)
All attributes of my objects are non-null.
What's wrong?Here are my classes:
public class ClassA {
public long id;
public java.util.List listB;
public java.lang.String name;
// Sestters and getters are here
public class ClassB {
public long id;
public java.lang.String name;
public ClassA refA;
// Sestters and getters are here
I use transparent indirection for ClassA.listB and no indirection for ClassB.refA.
Here is how I use these classes:
UnitOfWork uow = session.acquireUnitOfWork();
ClassA objA = new ClassA();
objA.setName("objectA");
objA.setListB(new ArrayList(10));
for (int i = 0; i < 10; i++) {
ClassB objB = new ClassB();
objB.setName("objectB" + i);
objB.setRefA(objA);
objA.getListB().add(objB);
uow.registerNewObject(objB);
uow.registerNewObject(objA);
uow.commit();
Here is log:
2003.07.31 12:48:44.759--DatabaseSession(160388)--Thread[main,5,main]--acquire unit of work:5396218
2003.07.31 12:48:44.759--UnitOfWork(5396218)--#registerNew(ClassB@4c4975)
2003.07.31 12:48:44.769--UnitOfWork(5396218)--#registerNew(ClassB@2da3d)
2003.07.31 12:48:44.769--UnitOfWork(5396218)--#registerNew(ClassB@6c8909)
2003.07.31 12:48:44.769--UnitOfWork(5396218)--#registerNew(ClassB@497934)
2003.07.31 12:48:44.779--UnitOfWork(5396218)--#registerNew(ClassB@280a69)
2003.07.31 12:48:44.779--UnitOfWork(5396218)--#registerNew(ClassB@40ec97)
2003.07.31 12:48:44.779--UnitOfWork(5396218)--#registerNew(ClassB@3b60c3)
2003.07.31 12:48:44.779--UnitOfWork(5396218)--#registerNew(ClassB@7a1bb6)
2003.07.31 12:48:44.779--UnitOfWork(5396218)--#registerNew(ClassB@5e256f)
2003.07.31 12:48:44.789--UnitOfWork(5396218)--#registerNew(ClassB@6e1fb1)
2003.07.31 12:48:44.789--UnitOfWork(5396218)--#registerNew(ClassA@1360e2)
2003.07.31 12:48:44.789--UnitOfWork(5396218)--begin unit of work commit
2003.07.31 12:48:44.809--DatabaseSession(160388)--Connection(2913640)--begin transaction
2003.07.31 12:48:44.819--UnitOfWork(5396218)--#executeQuery(DataModifyQuery())
2003.07.31 12:48:44.819--UnitOfWork(5396218)--Connection(2913640)--UPDATE SEQUENCE SET SEQ_COUNT = SEQ_COUNT + 1 WHERE SEQ_NAME = 'CLASSB'
2003.07.31 12:48:45.430--UnitOfWork(5396218)--#executeQuery(ValueReadQuery())
2003.07.31 12:48:45.430--UnitOfWork(5396218)--Connection(2913640)--SELECT SEQ_COUNT FROM SEQUENCE WHERE SEQ_NAME = 'CLASSB'
2003.07.31 12:48:45.660--DatabaseSession(160388)--Connection(2913640)--commit transaction
2003.07.31 12:48:45.670--UnitOfWork(5396218)--#assignSequence(112->ClassB@5e256f)
[ Skipped ]
2003.07.31 12:48:48.515--DatabaseSession(160388)--Connection(2913640)--begin transaction
2003.07.31 12:48:48.515--UnitOfWork(5396218)--#executeQuery(DataModifyQuery())
2003.07.31 12:48:48.515--UnitOfWork(5396218)--Connection(2913640)--UPDATE SEQUENCE SET SEQ_COUNT = SEQ_COUNT + 1 WHERE SEQ_NAME = 'CLASSB'
2003.07.31 12:48:48.605--UnitOfWork(5396218)--#executeQuery(ValueReadQuery())
2003.07.31 12:48:48.605--UnitOfWork(5396218)--Connection(2913640)--SELECT SEQ_COUNT FROM SEQUENCE WHERE SEQ_NAME = 'CLASSB'
2003.07.31 12:48:48.665--DatabaseSession(160388)--Connection(2913640)--commit transaction
2003.07.31 12:48:48.685--UnitOfWork(5396218)--#assignSequence(121->ClassB@497934)
2003.07.31 12:48:48.685--DatabaseSession(160388)--Connection(2913640)--begin transaction
2003.07.31 12:48:48.685--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassA@1360e2))
2003.07.31 12:48:48.695--UnitOfWork(5396218)--Connection(2913640)--INSERT INTO A_TABLE (Id, Name) VALUES (13, 'objectA')
2003.07.31 12:48:48.765--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassB@6e1fb1))
2003.07.31 12:48:48.765--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassA@1360e2))
2003.07.31 12:48:48.765--UnitOfWork(5396218)--Connection(2913640)--INSERT INTO B_TABLE (Id, Name, A_Id) VALUES (120, 'objectB9', 13)
2003.07.31 12:48:48.855--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassB@40ec97))
2003.07.31 12:48:48.855--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassA@1360e2))
2003.07.31 12:48:48.855--UnitOfWork(5396218)--Connection(2913640)--INSERT INTO B_TABLE (Id, Name, A_Id) VALUES (114, 'objectB5', 13)
2003.07.31 12:48:48.905--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassB@3b60c3))
2003.07.31 12:48:48.905--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassA@1360e2))
2003.07.31 12:48:48.905--UnitOfWork(5396218)--Connection(2913640)--INSERT INTO B_TABLE (Id, Name, A_Id) VALUES (117, 'objectB6', 13)
2003.07.31 12:48:48.965--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassB@6c8909))
2003.07.31 12:48:48.965--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassA@1360e2))
2003.07.31 12:48:48.965--UnitOfWork(5396218)--Connection(2913640)--INSERT INTO B_TABLE (Id, Name, A_Id) VALUES (115, 'objectB2', 13)
2003.07.31 12:48:49.015--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassB@5e256f))
2003.07.31 12:48:49.015--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassA@1360e2))
2003.07.31 12:48:49.015--UnitOfWork(5396218)--Connection(2913640)--INSERT INTO B_TABLE (Id, Name, A_Id) VALUES (112, 'objectB8', 13)
2003.07.31 12:48:49.086--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassB@2da3d))
2003.07.31 12:48:49.086--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassA@1360e2))
2003.07.31 12:48:49.086--UnitOfWork(5396218)--Connection(2913640)--INSERT INTO B_TABLE (Id, Name, A_Id) VALUES (113, 'objectB1', 13)
2003.07.31 12:48:49.126--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassB@4c4975))
2003.07.31 12:48:49.126--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassA@1360e2))
2003.07.31 12:48:49.126--UnitOfWork(5396218)--Connection(2913640)--INSERT INTO B_TABLE (Id, Name, A_Id) VALUES (118, 'objectB0', 13)
2003.07.31 12:48:49.166--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassB@7a1bb6))
2003.07.31 12:48:49.176--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassA@1360e2))
2003.07.31 12:48:49.176--UnitOfWork(5396218)--Connection(2913640)--INSERT INTO B_TABLE (Id, Name, A_Id) VALUES (116, 'objectB7', 13)
2003.07.31 12:48:49.236--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassB@497934))
2003.07.31 12:48:49.236--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassA@1360e2))
2003.07.31 12:48:49.236--UnitOfWork(5396218)--Connection(2913640)--INSERT INTO B_TABLE (Id, Name, A_Id) VALUES (121, 'objectB3', 13)
2003.07.31 12:48:49.296--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassB@280a69))
2003.07.31 12:48:49.296--UnitOfWork(5396218)--#executeQuery(WriteObjectQuery(ClassA@1360e2))
2003.07.31 12:48:49.296--UnitOfWork(5396218)--Connection(2913640)--INSERT INTO B_TABLE (Id, Name, A_Id) VALUES (119, 'objectB4', 13)
2003.07.31 12:48:49.326--DatabaseSession(160388)--Connection(2913640)--commit transaction
2003.07.31 12:48:49.837--UnitOfWork(5396218)--EXCEPTION [TOPLINK-150] (TopLink - 9.0.3 (Build 423)): oracle.toplink.exceptions.DescriptorException
EXCEPTION DESCRIPTION: The mapping for the attribute [listB] uses transparent indirection so the attribute [listB] must be initialized to an appropriate container. Currently the value is [null].
- JDK 1.1.x: an instance of IndirectList, IndirectMap or Hashtable, or one of their subclasses.
- JDK 1.2 or higher: an instance of an implementor of Collection or Map.
MAPPING: oracle.toplink.mappings.OneToManyMapping[listB]
DESCRIPTOR: Descriptor(ClassA --> [DatabaseTable(A_TABLE)])LOCAL EXCEPTION STACK:
EXCEPTION [TOPLINK-150] (TopLink - 9.0.3 (Build 423)): oracle.toplink.exceptions.DescriptorException
EXCEPTION DESCRIPTION: The mapping for the attribute [listB] uses transparent indirection so the attribute [listB] must be initialized to an appropriate container. Currently the value is [null].
- JDK 1.1.x: an instance of IndirectList, IndirectMap or Hashtable, or one of their subclasses.
- JDK 1.2 or higher: an instance of an implementor of Collection or Map.
MAPPING: oracle.toplink.mappings.OneToManyMapping[listB]
DESCRIPTOR: Descriptor(ClassA --> [DatabaseTable(A_TABLE)])
at oracle.toplink.exceptions.DescriptorException.indirectContainerInstantiationMismatch(Unknown Source)
at oracle.toplink.internal.indirection.TransparentIndirectionPolicy.validateAttributeOfInstantiatedObject(Unknown Source)
at oracle.toplink.mappings.ForeignReferenceMapping.getAttributeValueFromObject(Unknown Source)
at oracle.toplink.mappings.ForeignReferenceMapping.isAttributeValueInstantiated(Unknown Source)
at oracle.toplink.mappings.CollectionMapping.mergeChangesIntoObject(Unknown Source)
at oracle.toplink.internal.descriptors.ObjectBuilder.mergeChangesIntoObject(Unknown Source)
at oracle.toplink.internal.sessions.MergeManager.mergeChangesOfWorkingCopyIntoOriginal(Unknown Source)
at oracle.toplink.internal.sessions.MergeManager.mergeChanges(Unknown Source)
at oracle.toplink.mappings.ObjectReferenceMapping.mergeChangesIntoObject(Unknown Source)
at oracle.toplink.internal.descriptors.ObjectBuilder.mergeChangesIntoObject(Unknown Source)
at oracle.toplink.internal.sessions.MergeManager.mergeChangesOfWorkingCopyIntoOriginal(Unknown Source)
at oracle.toplink.internal.sessions.MergeManager.mergeChanges(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.mergeChangesIntoParent(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.commitRootUnitOfWork(Unknown Source)
at oracle.toplink.publicinterface.UnitOfWork.commit(Unknown Source)
at Main.main(Main.java:46) -
NullPointerException during export or validate of toplink map file
Hi,
I'm working on an Oracle/Toplink 10.1.3 project (similar to say SR Demo). I'm trying to write ant scripts
to build and deploy everything.
All is working except for one step. When you build the model in JDeveloper, it creates a data map XML file. E.g. in the
SR DEmo it produces SRMap.xml from SRMap.mwp.
There is a good document explaining the steps here...
http://www.oracle.com/technology/products/ias/toplink/doc/1013/main/_html/mw008.htm
When I implemented these steps in the build.xml file, I get a NullPointerException during the validate or export.
I tried implementing the steps in SR DEmo's build.xml file and seem to get the same problem. Here's what I'm doing...
I created a new file, toplink-ant-lib.xml
<?xml version="1.0"?>
<antlib>
<taskdef name="mappings.export" classname="oracle.toplink.workbench.ant.taskdefs.ExportDeploymentXMLTask"/>
<taskdef name="mappings.validate" classname="oracle.toplink.workbench.ant.taskdefs.MappingsValidateTask"/>
<taskdef name="session.validate" classname="oracle.toplink.workbench.ant.taskdefs.SessionValidateTask"/>
<typedef name="ignoreerror" classname="oracle.toplink.workbench.ant.typedefs.IgnoreError"/>
<typedef name="ignoreerrorset" classname="oracle.toplink.workbench.ant.typedefs.IgnoreErrorSet"/>
<typedef name="loginspec" classname="oracle.toplink.workbench.ant.typedefs.LoginSpec"/>
</antlib>
I then added the following targets to build.xml in the SR Demo...
<target name="init">
<property file="build.properties"/>
<property name = "toplink.mwp.dir" value = "${srdemo.home}/DataModel/toplink/SRMap"/>
<property name = "toplink.sessions.dir" value = "${srdemo.home}/DataModel/src/META-INF"/>
<path id = "database.classpath">
<pathelement path = "${toplink.home}/jlib/dms.jar"/>
<pathelement path = "${toplink.home}/jlib/OracleThinJDBC.jar"/>
</path>
<path id = "toplink.classpath">
<pathelement path = "${toplink.home}/jlib/toplink.jar"/>
<pathelement path = "${j2ee.lib}/ejb.jar"/>
<pathelement path = "${jdeveloper.home}/lib/xmlparserv2.jar"/>
<pathelement path = "${toplink.home}/jlib/antlr.jar"/>
</path>
<path id = "mw.classpath">
<pathelement path = "${toplink.home}/jlib/tlmwcore.jar"/>
<pathelement path = "${toplink.home}/jlib/toplinkmw.jar"/>
</path>
<path id = "mwplatforms.classpath">
<pathelement path = "${toplink.home}/config"/>
</path>
<typedef file = "toplink-ant-lib.xml"
classpathref = "mw.classpath"
uri = "toplinklib" />
</target>
<!-- ===================================================== -->
<!-- Define task parameter -->
<!-- ===================================================== -->
<target name="parameter.definition" depends="init">
<toplink:ignoreerrorset id = "ignoreErrors">
<toplink:ignoreerror code = "0233" />
</toplink:ignoreerrorset>
<toplink:loginspec id = "loginSpec"
url = "jdbc:cloudscape:stagedb;create=true"
driverclass = "COM.cloudscape.core.JDBCDriver"
user = "scott"
password="tiger" />
</target>
<!-- ==================================================== -->
<!-- Validate the MW Project -->
<!-- ===================================================== -->
<target name="validate.project" depends="parameter.definition">
<toplink:mappings.validate
projectfile = "${toplink.mwp.dir}/SRMap.mwp"
reportfile = "${toplink.mwp.dir}/problem-report.html"
reportformat = "html"
property = "mw-valid"
classpathref = "mwplatforms.classpath" >
<toplink:classpath refid = "mw.classpath" />
<toplink:classpath refid = "toplink.classpath" />
<toplink:ignoreerrorset refid = "ignoreErrors"/>
</toplink:mappings.validate>
</target>
I've left out the actual export target as the validate seems to throw the same exception. Here's what I get when I switch on verbose
[toplink:mappings.validate] An error occured while validating project: java.lang
.NullPointerException
BUILD FAILED
C:\apps\JDeveloper\jdev\samples\SRDemoSample\BuildAndDeploy\build.xml:147: An er
ror occured while validating project: java.lang.NullPointerException
at oracle.toplink.workbench.ant.taskdefs.ProjectTask.execute(ProjectTask
.java:69)
at oracle.toplink.workbench.ant.taskdefs.MappingsValidateTask.execute(Ma
ppingsValidateTask.java:51)
at oracle.toplink.workbench.ant.taskdefs.MappingsValidateTask.execute(Ma
ppingsValidateTask.java:36)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
at org.apache.tools.ant.Task.perform(Task.java:364)
at org.apache.tools.ant.Target.execute(Target.java:341)
at org.apache.tools.ant.Target.performTasks(Target.java:369)
at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
at org.apache.tools.ant.Project.executeTargets(Project.java:1062)
at org.apache.tools.ant.Main.runBuild(Main.java:673)
at org.apache.tools.ant.Main.startAnt(Main.java:188)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)
Caused by: An error occured while validating project: java.lang.NullPointerExcep
tion
at oracle.toplink.workbench.ant.ProjectValidator.execute(ProjectValidato
r.java:58)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at oracle.toplink.workbench.ant.taskdefs.ProjectTask$TaskRunner.execute(
ProjectTask.java:214)
at oracle.toplink.workbench.ant.taskdefs.ProjectTask$TaskRunner.access$1
00(ProjectTask.java:154)
at oracle.toplink.workbench.ant.taskdefs.ProjectTask.execute(ProjectTask
.java:65)
... 12 more
Caused by: java.lang.NullPointerException
at oracle.toplink.workbench.mappingsmodel.mapping.relational.MWCollectio
nMapping.legacy50PostPostProjectBuild(MWCollectionMapping.java:517)
at oracle.toplink.workbench.mappingsmodel.MWModel.legacy50PostPostProjec
tBuild(MWModel.java:503)
at oracle.toplink.workbench.mappingsmodel.descriptor.MWMappingDescriptor
.legacy50PostPostProjectBuild(MWMappingDescriptor.java:1081)
at oracle.toplink.workbench.mappingsmodel.descriptor.relational.MWTableD
escriptor.legacy50PostPostProjectBuild(MWTableDescriptor.java:1376)
at oracle.toplink.workbench.mappingsmodel.MWModel.legacy50PostPostProjec
tBuild(MWModel.java:503)
at oracle.toplink.workbench.mappingsmodel.project.MWProject.legacy50Post
ProjectBuild(MWProject.java:1337)
at oracle.toplink.workbench.mappingsio.ProjectReader.readLegacyProject(P
rojectReader.java:246)
at oracle.toplink.workbench.mappingsio.ProjectReader.read(ProjectReader.
java:102)
at oracle.toplink.workbench.mappingsio.ProjectIOManager.read(ProjectIOMa
nager.java:59)
at oracle.toplink.workbench.mappingsio.ProjectIOManager.read(ProjectIOMa
nager.java:55)
at oracle.toplink.workbench.ant.ProjectValidator.execute(ProjectValidato
r.java:40)
... 19 more
--- Nested Exception ---
An error occured while validating project: java.lang.NullPointerException
at oracle.toplink.workbench.ant.ProjectValidator.execute(ProjectValidato
r.java:58)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at oracle.toplink.workbench.ant.taskdefs.ProjectTask$TaskRunner.execute(
ProjectTask.java:214)
at oracle.toplink.workbench.ant.taskdefs.ProjectTask$TaskRunner.access$1
00(ProjectTask.java:154)
at oracle.toplink.workbench.ant.taskdefs.ProjectTask.execute(ProjectTask
.java:65)
at oracle.toplink.workbench.ant.taskdefs.MappingsValidateTask.execute(Ma
ppingsValidateTask.java:51)
at oracle.toplink.workbench.ant.taskdefs.MappingsValidateTask.execute(Ma
ppingsValidateTask.java:36)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
at org.apache.tools.ant.Task.perform(Task.java:364)
at org.apache.tools.ant.Target.execute(Target.java:341)
at org.apache.tools.ant.Target.performTasks(Target.java:369)
at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
at org.apache.tools.ant.Project.executeTargets(Project.java:1062)
at org.apache.tools.ant.Main.runBuild(Main.java:673)
at org.apache.tools.ant.Main.startAnt(Main.java:188)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)
Caused by: java.lang.NullPointerException
at oracle.toplink.workbench.mappingsmodel.mapping.relational.MWCollectio
nMapping.legacy50PostPostProjectBuild(MWCollectionMapping.java:517)
at oracle.toplink.workbench.mappingsmodel.MWModel.legacy50PostPostProjec
tBuild(MWModel.java:503)
at oracle.toplink.workbench.mappingsmodel.descriptor.MWMappingDescriptor
.legacy50PostPostProjectBuild(MWMappingDescriptor.java:1081)
at oracle.toplink.workbench.mappingsmodel.descriptor.relational.MWTableD
escriptor.legacy50PostPostProjectBuild(MWTableDescriptor.java:1376)
at oracle.toplink.workbench.mappingsmodel.MWModel.legacy50PostPostProjec
tBuild(MWModel.java:503)
at oracle.toplink.workbench.mappingsmodel.project.MWProject.legacy50Post
ProjectBuild(MWProject.java:1337)
at oracle.toplink.workbench.mappingsio.ProjectReader.readLegacyProject(P
rojectReader.java:246)
at oracle.toplink.workbench.mappingsio.ProjectReader.read(ProjectReader.
java:102)
at oracle.toplink.workbench.mappingsio.ProjectIOManager.read(ProjectIOMa
nager.java:59)
at oracle.toplink.workbench.mappingsio.ProjectIOManager.read(ProjectIOMa
nager.java:55)
at oracle.toplink.workbench.ant.ProjectValidator.execute(ProjectValidato
r.java:40)
... 19 more
--- Nested Exception ---
java.lang.NullPointerException
at oracle.toplink.workbench.mappingsmodel.mapping.relational.MWCollectio
nMapping.legacy50PostPostProjectBuild(MWCollectionMapping.java:517)
at oracle.toplink.workbench.mappingsmodel.MWModel.legacy50PostPostProjec
tBuild(MWModel.java:503)
at oracle.toplink.workbench.mappingsmodel.descriptor.MWMappingDescriptor
.legacy50PostPostProjectBuild(MWMappingDescriptor.java:1081)
at oracle.toplink.workbench.mappingsmodel.descriptor.relational.MWTableD
escriptor.legacy50PostPostProjectBuild(MWTableDescriptor.java:1376)
at oracle.toplink.workbench.mappingsmodel.MWModel.legacy50PostPostProjec
tBuild(MWModel.java:503)
at oracle.toplink.workbench.mappingsmodel.project.MWProject.legacy50Post
ProjectBuild(MWProject.java:1337)
at oracle.toplink.workbench.mappingsio.ProjectReader.readLegacyProject(P
rojectReader.java:246)
at oracle.toplink.workbench.mappingsio.ProjectReader.read(ProjectReader.
java:102)
at oracle.toplink.workbench.mappingsio.ProjectIOManager.read(ProjectIOMa
nager.java:59)
at oracle.toplink.workbench.mappingsio.ProjectIOManager.read(ProjectIOMa
nager.java:55)
at oracle.toplink.workbench.ant.ProjectValidator.execute(ProjectValidato
r.java:40)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at oracle.toplink.workbench.ant.taskdefs.ProjectTask$TaskRunner.execute(
ProjectTask.java:214)
at oracle.toplink.workbench.ant.taskdefs.ProjectTask$TaskRunner.access$1
00(ProjectTask.java:154)
at oracle.toplink.workbench.ant.taskdefs.ProjectTask.execute(ProjectTask
.java:65)
at oracle.toplink.workbench.ant.taskdefs.MappingsValidateTask.execute(Ma
ppingsValidateTask.java:51)
at oracle.toplink.workbench.ant.taskdefs.MappingsValidateTask.execute(Ma
ppingsValidateTask.java:36)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
at org.apache.tools.ant.Task.perform(Task.java:364)
at org.apache.tools.ant.Target.execute(Target.java:341)
at org.apache.tools.ant.Target.performTasks(Target.java:369)
at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
at org.apache.tools.ant.Project.executeTargets(Project.java:1062)
at org.apache.tools.ant.Main.runBuild(Main.java:673)
at org.apache.tools.ant.Main.startAnt(Main.java:188)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)
Total time: 6 seconds
C:\apps\JDeveloper\jdev\samples\SRDemoSample\BuildAndDeploy>
The problem seems similar to the one described in the toplink forums here...
NullPointerException while trying to export project in workbench
I tried opening SRMap.mwp in Toplink Workbench, and I get an exception on load...
oracle.toplink.workbench.framework.OpenException: java.lang.NullPointerException
at oracle.toplink.workbench.mappingsplugin.MappingsPlugin.open(MappingsPlugin.java:290)
at oracle.toplink.workbench.framework.internal.FrameworkApplication.open(FrameworkApplication.java:687)
at oracle.toplink.workbench.framework.internal.FrameworkNodeManager.openCallback(FrameworkNodeManager.java:341)
at oracle.toplink.workbench.framework.internal.RunnableProjectLoader.run2(RunnableProjectLoader.java:76)
at oracle.toplink.workbench.framework.internal.RunnableProjectLoader.run(RunnableProjectLoader.java:63)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NullPointerException
at oracle.toplink.workbench.mappingsmodel.mapping.relational.MWCollectionMapping.legacy50PostPostProjectBuild(MWCollectionMapping.java:517)
at oracle.toplink.workbench.mappingsmodel.MWModel.legacy50PostPostProjectBuild(MWModel.java:503)
at oracle.toplink.workbench.mappingsmodel.descriptor.MWMappingDescriptor.legacy50PostPostProjectBuild(MWMappingDescriptor.java:1081)
at oracle.toplink.workbench.mappingsmodel.descriptor.relational.MWTableDescriptor.legacy50PostPostProjectBuild(MWTableDescriptor.java:1376)
at oracle.toplink.workbench.mappingsmodel.MWModel.legacy50PostPostProjectBuild(MWModel.java:503)
at oracle.toplink.workbench.mappingsmodel.project.MWProject.legacy50PostProjectBuild(MWProject.java:1337)
at oracle.toplink.workbench.mappingsio.ProjectReader.readLegacyProject(ProjectReader.java:246)
at oracle.toplink.workbench.mappingsio.ProjectReader.read(ProjectReader.java:102)
at oracle.toplink.workbench.mappingsio.ProjectIOManager.read(ProjectIOManager.java:59)
at oracle.toplink.workbench.mappingsplugin.MappingsPlugin.open(MappingsPlugin.java:286)
... 5 more
That's using Toplink Workbench 10g Release 3 (10.1.3.0.0)
I'm using 10.1.3 JDeveloper with the latest (SU3) patch.
Any ideas would be apprecated!!!
Kind regards,
Ciaran.Hi Karen,
Thanks for the response.
So are you saying we cannot build/deploy our project outside of the JDeveloper IDE?
What we were trying to do is to automate the build and deployment using ant scripts. Then we could run say nightly checkout/build/deploy script to a test machine as part of a continious integration process.
We can build all the code and even remote deploy it fine using ant, however we cannot build this data map XML file outside of the JDeveloper environment. I guess a workaround would be to check-in the generated XML file into our source code control. This sounds risky to me and also, our SCC system sets non checked-out files to be read-only and JDeveloper gives an error if it cannot write to that file.
Any ideas?
Cheers,
Ciaran. -
NullPointerException during failover on 5.7MP2
I just saw this error (below) today during the failover of the primary engine to the backup engine. This message was in the backup engine's log file (soon to be primary engine) and occurred right after the "[SSM] Primary server is not responding. Attempting to take over ..." message. We are running 5.7MP2 as a standalone enterprise installation. Thanks for any insight you can provide.
An exception occurred while executing a transaction. Details:
java.lang.NullPointerException
java.lang.NullPointerException
at fuego.fengine.FEngineConnectedClient.clean(FEngineConnectedClient.java:224)
at fuego.server.service.ConnectedClientService.clean(ConnectedClientService.java:243)
at fuego.server.ConnectedClient$1.execute(ConnectedClient.java:178)
at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:290)
at fuego.transaction.TransactionAction.startBaseTransaction(TransactionAction.java:462)
at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:540)
at fuego.transaction.TransactionAction.start(TransactionAction.java:213)
at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:117)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at fuego.lang.JavaClass.invokeMethod(JavaClass.java:1478)
at fuego.lang.JavaObject.invoke(JavaObject.java:185)
at fuego.component.Message.process(Message.java:585)
at fuego.component.ExecutionThread.processMessage(ExecutionThread.java:759)
at fuego.component.ExecutionThread.processBatch(ExecutionThread.java:734)
at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:140)
at fuego.fengine.service.FEngineExecution$1.processBatch(FEngineExecution.java:105)
at fuego.component.ExecutionThread.work(ExecutionThread.java:818)
at fuego.component.ExecutionThread.run(ExecutionThread.java:397)Contact [email protected] and reference CR081579.
Tom LeRoux wrote:
Has anyone seen this NPE when creating an InitialContext? We got this for about
a day on one of our cluster instances, and then it magically went away (the other
server in the cluster worked fine).. Solaris, Weblogic 5.1 service pack 10.
java.lang.NullPointerException
at weblogic.rjvm.RJVMFinder.equals(RJVMFinder.java:98)
at java.util.Hashtable.get(Hashtable.java:323)
at weblogic.rjvm.ServerURL.findOrCreateRJVM(ServerURL.java:190)
at weblogic.jndi.WLInitialContextFactoryDelegate.getInitialContext(WLInitialContextFactoryDelegate.java:195)
at weblogic.jndi.WLInitialContextFactoryDelegate.getInitialContext(WLInitialContextFactoryDelegate.java:148)
at weblogic.jndi.WLInitialContextFactory.getInitialContext(WLInitialContextFactory.java:123)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:665)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:246)
at javax.naming.InitialContext.init(InitialContext.java:222)
at javax.naming.InitialContext.<init>(InitialContext.java:198)--
Rajesh Mirchandani
Developer Relations Engineer
BEA Support -
NullPointerException during remove()
In WL7sp2,
I have this logic,
try {
Enumeration enum;
enum = (Enumeration) m_Dt05aDt05bAssocHomeA.findAllForDT05BDt05b(thePeerBOTypeName,
thePeerID);
if ((enum != null) && (enum.hasMoreElements())) {
while(enum.hasMoreElements()) {
Dt05aDt05bAssoc assoc = (Dt05aDt05bAssoc)enum.nextElement();
if(assoc == null) {
trace("addToDt05b(): assoc is null!!!");
} else {
trace("addToDt05b(): assoc is not null!!!");
assoc.remove();
} catch (FinderException e) {
trace("addToDt05b(): Exception: " + e.getMessage());
throw new AssocException(e.getMessage());
} catch (RemoveException e) {
trace("addToDt05b(): Exception: " + e.getMessage());
throw new AssocException(e.getMessage());
First, I retieve Dt05aDt05bAssoc from enum result of finder.
Second, I try to remove it, but it throws NullPointerException. This is not like
that Dt05aDt05bAssoc is null. Some object during EntityEJBObject.remove() is null.
Can you quess what is this?
This is stack trace.
Start server side stack trace:
java.lang.NullPointerException
at weblogic.ejb20.internal.BaseEJBHome.handleSystemException(BaseEJBHome
.java:287)
at weblogic.ejb20.internal.EntityEJBObject.remove(EntityEJBObject.java:1
31)
at SimpleBank.Association.Dt05aDt05bAssocBean_vf5rms_EOImpl.remove(Dt05a
Dt05bAssocBean_vf5rms_EOImpl.java:593)
at SimpleBank.Association.Dt05aDt05bAssocBean_vf5rms_EOImpl_WLSkel.invok
e(Unknown Source)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:15
7)
at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:127)
at SimpleBank.Association.Dt05aDt05bAssocBean_vf5rms_EOImpl_WLStub.remov
e(Unknown Source)
at SimpleBank.Association.DT05ABean.addToDt05b(DT05ABean.java:620)
at SimpleBank.Association.DT05ABean.ejbPostCreate(DT05ABean.java:343)
at SimpleBank.Association.DT05ABean_ry3pes__WebLogic_CMP_RDBMS.ejbPostCr
eate(DT05ABean_ry3pes__WebLogic_CMP_RDBMS.java:662)
at java.lang.reflect.Method.invoke(Native Method)
at weblogic.ejb20.manager.DBManager.create(DBManager.java:984)
at weblogic.ejb20.manager.DBManager.remoteCreate(DBManager.java:858)
at weblogic.ejb20.internal.EntityEJBHome.create(EntityEJBHome.java:244)
at SimpleBank.Association.DT05ABean_ry3pes_HomeImpl.create(DT05ABean_ry3
pes_HomeImpl.java:129)
at SimpleBank.Association.DT05ABean_ry3pes_HomeImpl_WLSkel.invoke(Unknow
n Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:362)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
ef.java:114)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:313)
at weblogic.security.service.SecurityServiceManager.runAs(SecurityServic
eManager.java:821)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
a:308)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
.java:30)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
End server side stack traceThat's a NPE in WLS code and therefore a bug. Please open a case with
[email protected]
-- Rob
Jaejun Lee wrote:
In WL7sp2,
I have this logic,
try {
Enumeration enum;
enum = (Enumeration) m_Dt05aDt05bAssocHomeA.findAllForDT05BDt05b(thePeerBOTypeName,
thePeerID);
if ((enum != null) && (enum.hasMoreElements())) {
while(enum.hasMoreElements()) {
Dt05aDt05bAssoc assoc = (Dt05aDt05bAssoc)enum.nextElement();
if(assoc == null) {
trace("addToDt05b(): assoc is null!!!");
} else {
trace("addToDt05b(): assoc is not null!!!");
assoc.remove();
} catch (FinderException e) {
trace("addToDt05b(): Exception: " + e.getMessage());
throw new AssocException(e.getMessage());
} catch (RemoveException e) {
trace("addToDt05b(): Exception: " + e.getMessage());
throw new AssocException(e.getMessage());
First, I retieve Dt05aDt05bAssoc from enum result of finder.
Second, I try to remove it, but it throws NullPointerException. This is not like
that Dt05aDt05bAssoc is null. Some object during EntityEJBObject.remove() is null.
Can you quess what is this?
This is stack trace.
Start server side stack trace:
java.lang.NullPointerException
at weblogic.ejb20.internal.BaseEJBHome.handleSystemException(BaseEJBHome
java:287)
at weblogic.ejb20.internal.EntityEJBObject.remove(EntityEJBObject.java:1
31)
at SimpleBank.Association.Dt05aDt05bAssocBean_vf5rms_EOImpl.remove(Dt05a
Dt05bAssocBean_vf5rms_EOImpl.java:593)
at SimpleBank.Association.Dt05aDt05bAssocBean_vf5rms_EOImpl_WLSkel.invok
e(Unknown Source)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:15
7)
at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:127)
at SimpleBank.Association.Dt05aDt05bAssocBean_vf5rms_EOImpl_WLStub.remov
e(Unknown Source)
at SimpleBank.Association.DT05ABean.addToDt05b(DT05ABean.java:620)
at SimpleBank.Association.DT05ABean.ejbPostCreate(DT05ABean.java:343)
at SimpleBank.Association.DT05ABean_ry3pes__WebLogic_CMP_RDBMS.ejbPostCr
eate(DT05ABean_ry3pes__WebLogic_CMP_RDBMS.java:662)
at java.lang.reflect.Method.invoke(Native Method)
at weblogic.ejb20.manager.DBManager.create(DBManager.java:984)
at weblogic.ejb20.manager.DBManager.remoteCreate(DBManager.java:858)
at weblogic.ejb20.internal.EntityEJBHome.create(EntityEJBHome.java:244)
at SimpleBank.Association.DT05ABean_ry3pes_HomeImpl.create(DT05ABean_ry3
pes_HomeImpl.java:129)
at SimpleBank.Association.DT05ABean_ry3pes_HomeImpl_WLSkel.invoke(Unknow
n Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:362)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
ef.java:114)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:313)
at weblogic.security.service.SecurityServiceManager.runAs(SecurityServic
eManager.java:821)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
a:308)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
java:30)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
End server side stack trace -
NullPointerException during building of a DataOutputStream
URL url;
URLConnection urlc;
try {
url = new URL("http://", "localhost/", "Post.php");
urlc = url.openConnection();
urlc.setDoInput(true);
urlc.setDoOutput(true);
urlc.setAllowUserInteraction(false);
} catch (IOException ioe3) { }
DataOutputStream tpen = new DataOutputStream(urlc.getOutputStream());
Well, this is an fragment of my code. During running this aplication, the Java-Console tells me an error. A NullPointerException in the last row of this code fragment. Can anybody tell my, why?It is better adding ioe3.printStackTrace() in your catch statement.
And try url = new URL("http", "localhost", "Post.php");
Regards,
Maybe you are looking for
-
Hey on my iweb website when i publish it and view the blog i get a error " # Exception: TypeError # Message : this.blogFeed is undefined " What is this and how can i fix it? because it doesent show the page. Please help Thanks, Christopher
-
I have nearly fresh Arch on computer and I wanted to have autologin. To make this work, I used this solution. I don't know what I did wrong, but after this my system couldn't start (I don't remember what Bash said, because it was some weeks ago). I t
-
I have been disconnected by ADOBE while trying to reset my adobe reader on my MacBookAir
Why have I been disconnected by ADOBE while I was trying to reset the ADOBE READER installed in my MacBookAir ?
-
Controling X Axis tick intervals
I would like to control the X Axis tick intervals on a line graph. The data contains a set of values which range from 0 to 100 (a.k.a Exam Marks) and I would like to show 6 interval ticks from 1 to 100 e.g. 1-20-40-60-80-100. I can use the tickLabelS
-
UCCX 8.0(2) SU4 - Schedule future report doesn´t work
Hi Guys, I and my Customer are trying to do schedule future report and doesn´t work. We setting the time feature and another features correctly. Any have idea about this? Thanks, Wilson