NullPointerException in getHeader() & IMAPMessage
Hi everyone,
My software is running fine 99% of the time, except that I get this error once in a while.
I'm using JDK 1.4 and JavaMail 1.2
java.lang.NullPointerException
at com.sun.mail.util.LineInputStream.readLine(LineInputStream.java:56)
at javax.mail.internet.InternetHeaders.load(InternetHeaders.java:114)
at com.sun.mail.imap.IMAPMessage.getHeader(IMAPMessage.java:603)
A similar problem also occured when calling the reply() method of a IMAPMessage.
java.lang.NullPointerException
at com.sun.mail.util.LineInputStream.readLine(LineInputStream.java:56)
at javax.mail.internet.InternetHeaders.load(InternetHeaders.java:114)
at com.sun.mail.imap.IMAPMessage.getHeader(IMAPMessage.java:603)
at com.sun.mail.imap.IMAPMessage.getHeader(IMAPMessage.java:617)
at javax.mail.internet.MimeMessage.reply(MimeMessage.java:1384)
Alex
I'm using JavaMail 1.2 and we can't upgrade to 1.3 just yet for some reason I don't control.
There is an IMAPMessage in JavaMail 1.3, although it's not directly used. It's for the IMAP JavaMail implementation. The full class name is:
com.sun.mail.imap.IMAPMessage
Alex
Similar Messages
-
Inbound UMS Adapter Issues with Receiving Emails from Lotus Notes
Hi,
I have this requirement in my project where I need to read the mails from a particular Email Account which has been created in Lotus Notes. The IMAP Host and port is enabled for the same and I am setting all these in my Server's EM Console UMS Driver settings. I have provided all the Details required for Incoming Email Driver setup like: IncomingMailID, IncomingMailServer, Port, Server Type: IMAP, IncomingMailIDs etc. I have followed all the steps mentioned in regular UMS Adapter Documentation and Blogs.
I can see that Soa-infra is able to access all the mails from this mail Account and I can see the same in the managed server log files also. But the issue is with the BPEL Process which I have created with the Inbound UMS adapter. This process has UMS inbound adapter with the Email address same as the one defined in UMS Configuration in EM Console.
The Process is not getting triggered at all whenever a new mail comes to the mail id. I am not sure what is the issue. If anyone has faced similar issue please let me know the solution for the same.
Also 1 strange thing I observed is, if I go to the Soa-infra proerties-> Human Workflow Management and Test the notification by sending mail to the IncomingMailId, the Process is getting triggered, but if I send a mail from any other gmail/any other account to the IncomingMailID set in Process and server, the Process is not getting triggered.
In the logs I see the following Error messages which I don't think would be impacting the Process to receive messages as soa-infra is able to pick the messages without any issues.
at javax.mail.internet.MimePartDataSource.getInputStream(MimePartDataSou
rce.java:119)
at javax.activation.DataHandler.getInputStream(DataHandler.java:223)
at javax.mail.internet.MimeBodyPart.getInputStream(MimeBodyPart.java:573
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.copyCo
ntent(EmailResourceAdapter.java:998)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.copyCo
ntent(EmailResourceAdapter.java:1023)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.create
IncomingMessage(EmailResourceAdapter.java:593)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.onMess
age(EmailResourceAdapter.java:440)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.onMess
age(EmailResourceAdapter.java:394)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.fetchN
ewMailFromStore(EmailResourceAdapter.java:357)
at oracle.sdpinternal.messaging.driver.email.MailboxPollingWorker.run(Ma
ilboxPollingWorker.java:49)
at weblogic.connector.security.layer.WorkImpl.runIt(WorkImpl.java:108)
at weblogic.connector.security.layer.WorkImpl.run(WorkImpl.java:44)
at weblogic.connector.work.WorkRequest.run(WorkRequest.java:95)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin
gWorkManagerImpl.java:545)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
>
<31/07/2014 5:44:06 PM EST> <Warning> <oracle.sdp.messaging.driver.email> <SDP-2
5700> <An unexpected exception was caught.
javax.mail.FolderClosedException
at com.sun.mail.imap.IMAPMessage.getProtocol(IMAPMessage.java:149)
at com.sun.mail.imap.IMAPMessage.setFlags(IMAPMessage.java:871)
at javax.mail.Message.setFlag(Message.java:578)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.onMess
age(EmailResourceAdapter.java:501)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.onMess
age(EmailResourceAdapter.java:394)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.fetchN
ewMailFromStore(EmailResourceAdapter.java:357)
at oracle.sdpinternal.messaging.driver.email.MailboxPollingWorker.run(Ma
ilboxPollingWorker.java:49)
at weblogic.connector.security.layer.WorkImpl.runIt(WorkImpl.java:108)
at weblogic.connector.security.layer.WorkImpl.run(WorkImpl.java:44)
at weblogic.connector.work.WorkRequest.run(WorkRequest.java:95)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin
gWorkManagerImpl.java:545)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
>
<31/07/2014 5:44:06 PM EST> <Warning> <oracle.sdp.messaging.driver.email> <SDP-2
5700> <An unexpected exception was caught.
javax.mail.FolderClosedException
at com.sun.mail.imap.IMAPMessage.getProtocol(IMAPMessage.java:149)
at com.sun.mail.imap.IMAPMessage.getHeader(IMAPMessage.java:715)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.getMes
sageID(EmailResourceAdapter.java:1415)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.onMess
age(EmailResourceAdapter.java:417)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.onMess
age(EmailResourceAdapter.java:394)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.fetchN
ewMailFromStore(EmailResourceAdapter.java:357)
at oracle.sdpinternal.messaging.driver.email.MailboxPollingWorker.run(Ma
ilboxPollingWorker.java:49)
at weblogic.connector.security.layer.WorkImpl.runIt(WorkImpl.java:108)
at weblogic.connector.security.layer.WorkImpl.run(WorkImpl.java:44)
at weblogic.connector.work.WorkRequest.run(WorkRequest.java:95)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin
gWorkManagerImpl.java:545)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)Hi,
I have this requirement in my project where I need to read the mails from a particular Email Account which has been created in Lotus Notes. The IMAP Host and port is enabled for the same and I am setting all these in my Server's EM Console UMS Driver settings. I have provided all the Details required for Incoming Email Driver setup like: IncomingMailID, IncomingMailServer, Port, Server Type: IMAP, IncomingMailIDs etc. I have followed all the steps mentioned in regular UMS Adapter Documentation and Blogs.
I can see that Soa-infra is able to access all the mails from this mail Account and I can see the same in the managed server log files also. But the issue is with the BPEL Process which I have created with the Inbound UMS adapter. This process has UMS inbound adapter with the Email address same as the one defined in UMS Configuration in EM Console.
The Process is not getting triggered at all whenever a new mail comes to the mail id. I am not sure what is the issue. If anyone has faced similar issue please let me know the solution for the same.
Also 1 strange thing I observed is, if I go to the Soa-infra proerties-> Human Workflow Management and Test the notification by sending mail to the IncomingMailId, the Process is getting triggered, but if I send a mail from any other gmail/any other account to the IncomingMailID set in Process and server, the Process is not getting triggered.
In the logs I see the following Error messages which I don't think would be impacting the Process to receive messages as soa-infra is able to pick the messages without any issues.
at javax.mail.internet.MimePartDataSource.getInputStream(MimePartDataSou
rce.java:119)
at javax.activation.DataHandler.getInputStream(DataHandler.java:223)
at javax.mail.internet.MimeBodyPart.getInputStream(MimeBodyPart.java:573
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.copyCo
ntent(EmailResourceAdapter.java:998)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.copyCo
ntent(EmailResourceAdapter.java:1023)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.create
IncomingMessage(EmailResourceAdapter.java:593)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.onMess
age(EmailResourceAdapter.java:440)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.onMess
age(EmailResourceAdapter.java:394)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.fetchN
ewMailFromStore(EmailResourceAdapter.java:357)
at oracle.sdpinternal.messaging.driver.email.MailboxPollingWorker.run(Ma
ilboxPollingWorker.java:49)
at weblogic.connector.security.layer.WorkImpl.runIt(WorkImpl.java:108)
at weblogic.connector.security.layer.WorkImpl.run(WorkImpl.java:44)
at weblogic.connector.work.WorkRequest.run(WorkRequest.java:95)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin
gWorkManagerImpl.java:545)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
>
<31/07/2014 5:44:06 PM EST> <Warning> <oracle.sdp.messaging.driver.email> <SDP-2
5700> <An unexpected exception was caught.
javax.mail.FolderClosedException
at com.sun.mail.imap.IMAPMessage.getProtocol(IMAPMessage.java:149)
at com.sun.mail.imap.IMAPMessage.setFlags(IMAPMessage.java:871)
at javax.mail.Message.setFlag(Message.java:578)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.onMess
age(EmailResourceAdapter.java:501)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.onMess
age(EmailResourceAdapter.java:394)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.fetchN
ewMailFromStore(EmailResourceAdapter.java:357)
at oracle.sdpinternal.messaging.driver.email.MailboxPollingWorker.run(Ma
ilboxPollingWorker.java:49)
at weblogic.connector.security.layer.WorkImpl.runIt(WorkImpl.java:108)
at weblogic.connector.security.layer.WorkImpl.run(WorkImpl.java:44)
at weblogic.connector.work.WorkRequest.run(WorkRequest.java:95)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin
gWorkManagerImpl.java:545)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
>
<31/07/2014 5:44:06 PM EST> <Warning> <oracle.sdp.messaging.driver.email> <SDP-2
5700> <An unexpected exception was caught.
javax.mail.FolderClosedException
at com.sun.mail.imap.IMAPMessage.getProtocol(IMAPMessage.java:149)
at com.sun.mail.imap.IMAPMessage.getHeader(IMAPMessage.java:715)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.getMes
sageID(EmailResourceAdapter.java:1415)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.onMess
age(EmailResourceAdapter.java:417)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.onMess
age(EmailResourceAdapter.java:394)
at oracle.sdpinternal.messaging.driver.email.EmailResourceAdapter.fetchN
ewMailFromStore(EmailResourceAdapter.java:357)
at oracle.sdpinternal.messaging.driver.email.MailboxPollingWorker.run(Ma
ilboxPollingWorker.java:49)
at weblogic.connector.security.layer.WorkImpl.runIt(WorkImpl.java:108)
at weblogic.connector.security.layer.WorkImpl.run(WorkImpl.java:44)
at weblogic.connector.work.WorkRequest.run(WorkRequest.java:95)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin
gWorkManagerImpl.java:545)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221) -
I am getting this error when I try to download a message using IMAP from exchange server
java.lang.NullPointerException
at com.sun.mail.iap.Response.parse(Response.java:99)
at com.sun.mail.iap.Response.<init>(Response.java:68)
at com.sun.mail.imap.protocol.IMAPResponse.<init>(IMAPResponse.java:31)
at com.sun.mail.imap.protocol.IMAPResponse.readResponse(IMAPResponse.java:105)
at com.sun.mail.imap.protocol.IMAPProtocol.readResponse(IMAPProtocol.java:153)
at com.sun.mail.iap.Protocol.command(Protocol.java:215)
at com.sun.mail.imap.protocol.IMAPProtocol.fetch(IMAPProtocol.java:882)
at com.sun.mail.imap.protocol.IMAPProtocol.fetch(IMAPProtocol.java:874)
at com.sun.mail.imap.protocol.IMAPProtocol.fetchBody(IMAPProtocol.java:656)
at com.sun.mail.imap.protocol.IMAPProtocol.fetchBody(IMAPProtocol.java:645)
This error occurs intermittantly. I placed one large mail (around 600 MB) and few normal size mails on exchange server. In few testing runs, this error occured while downloading the large mail as well as one normal mail. In one test run, all mails got downloaded successfully.
Could anyone please suggest the cause and resolution?
Thanks.I turned on the session debugging. I am running my application on Linux, so the debugging info was moved to a log file. This log file is very large (around 1GB) and I am unable to open it.
One more thing: I am trying Message.writeTo() method to download the message. If an OutOfMemoryError occurs, I catch it and try to download the message using GetInputStream. NullPointerException is occuring in both the cases.
Exception stack trace with writeTo():
java.lang.NullPointerException
at com.sun.mail.iap.Response.parse(Response.java:99)
at com.sun.mail.iap.Response.<init>(Response.java:68)
at com.sun.mail.imap.protocol.IMAPResponse.<init>(IMAPResponse.java:31)
at com.sun.mail.imap.protocol.IMAPResponse.readResponse(IMAPResponse.java:105)
at com.sun.mail.imap.protocol.IMAPProtocol.readResponse(IMAPProtocol.java:153)
at com.sun.mail.iap.Protocol.command(Protocol.java:215)
at com.sun.mail.imap.protocol.IMAPProtocol.fetch(IMAPProtocol.java:882)
at com.sun.mail.imap.protocol.IMAPProtocol.fetch(IMAPProtocol.java:874)
at com.sun.mail.imap.protocol.IMAPProtocol.fetchBody(IMAPProtocol.java:656)
at com.sun.mail.imap.protocol.IMAPProtocol.fetchBody(IMAPProtocol.java:645)
at com.sun.mail.imap.IMAPMessage.writeTo(IMAPMessage.java:536)
Exception stack trace with getInputStream():
java.lang.NullPointerException
at com.sun.mail.iap.Response.parse(Response.java:99)
at com.sun.mail.iap.Response.<init>(Response.java:68)
at com.sun.mail.imap.protocol.IMAPResponse.<init>(IMAPResponse.java:31)
at com.sun.mail.imap.protocol.IMAPResponse.readResponse(IMAPResponse.java:105)
at com.sun.mail.imap.protocol.IMAPProtocol.readResponse(IMAPProtocol.java:153)
at com.sun.mail.iap.Protocol.command(Protocol.java:215)
at com.sun.mail.imap.protocol.IMAPProtocol.fetch(IMAPProtocol.java:882)
at com.sun.mail.imap.protocol.IMAPProtocol.fetch(IMAPProtocol.java:874)
at com.sun.mail.imap.protocol.IMAPProtocol.fetchBody(IMAPProtocol.java:653)
at com.sun.mail.imap.protocol.IMAPProtocol.peekBody(IMAPProtocol.java:637)
at com.sun.mail.imap.IMAPMessage.loadHeaders(IMAPMessage.java:1055)
at com.sun.mail.imap.IMAPMessage.getAllHeaders(IMAPMessage.java:642)
First I try to download the headers in case of an OutOfMemoryError. The above trace shows that.
Could anyone point out the problem and help resolving it? -
Server: JBoss EAP 6.2.0
Client: JDK 1.7.0_51 x64
JAX-WS: RI 2.2.8 ( via -Djava.endorsed.dirs )
I am getting a java.lang.NullPointerException when calling the operation on the WS endpoint from the client when using non-anonymous replyTo address.
I have simplified the scenario into a small test case that hopefully others can replicate. Since the exception is happening on the client instead of the server, I would think that the container used is irrelevant, but I have specified it nonetheless.
1) WebService:
package test.webservice;
import java.util.Random;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.xml.ws.soap.Addressing;
@WebService(targetNamespace="http://services.nowhere.org/")
@Addressing(required=true)
@SOAPBinding(style = SOAPBinding.Style.DOCUMENT)
public class RandomTest {
@WebMethod
public long nextRandom(@WebParam boolean forceException) throws Exception {
if( forceException ) {
throw new Exception("Some exception");
Random rand = new Random();
return rand.nextLong();
2) Generated WSDL by JBossEAP 6.2.2:
<?xml version='1.0' encoding='UTF-8'?><wsdl:definitions xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsp="http://www.w3.org/ns/ws-policy" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:tns="http://webservice.test/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:ns1="http://schemas.xmlsoap.org/soap/http" name="RandomTestService" targetNamespace="http://webservice.test/">
<wsdl:types>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://webservice.test/" elementFormDefault="unqualified" targetNamespace="http://webservice.test/" version="1.0">
<xs:element name="nextRandom" type="tns:nextRandom"/>
<xs:element name="nextRandomResponse" type="tns:nextRandomResponse"/>
<xs:complexType name="nextRandom">
<xs:sequence/>
</xs:complexType>
<xs:complexType name="nextRandomResponse">
<xs:sequence>
<xs:element name="return" type="xs:long"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
</wsdl:types>
<wsdl:message name="nextRandom">
<wsdl:part element="tns:nextRandom" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="nextRandomResponse">
<wsdl:part element="tns:nextRandomResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:portType name="RandomTest">
<wsdl:operation name="nextRandom">
<wsdl:input message="tns:nextRandom" name="nextRandom" wsam:Action="http://webservice.test/RandomTest/nextRandomRequest" wsaw:Action="http://webservice.test/RandomTest/nextRandomRequest">
</wsdl:input>
<wsdl:output message="tns:nextRandomResponse" name="nextRandomResponse" wsam:Action="http://webservice.test/RandomTest/nextRandomResponse" wsaw:Action="http://webservice.test/RandomTest/nextRandomResponse">
</wsdl:output>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="RandomTestServiceSoapBinding" type="tns:RandomTest">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsaw:UsingAddressing wsdl:required="true"/>
<wsp:PolicyReference URI="#RandomTestServiceSoapBinding_WSAM_Addressing_Policy"/>
<wsdl:operation name="nextRandom">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="nextRandom">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="nextRandomResponse">
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="RandomTestService">
<wsdl:port binding="tns:RandomTestServiceSoapBinding" name="RandomTestPort">
<soap:address location="http://localhost:8080/servertest/RandomTest"/>
</wsdl:port>
</wsdl:service>
<wsp:Policy xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="RandomTestServiceSoapBinding_WSAM_Addressing_Policy"><wsam:Addressing><wsp:Policy/></wsam:Addressing></wsp:Policy>
</wsdl:definitions>
3) ant build.xml to generate the client code from WSDL
<?xml version="1.0" encoding="UTF-8"?>
<project default="build" basedir="..">
<property name="jaxws.classpath" location="C://jaxws-2.2.8/jaxws-ri/lib/*.jar"/>
<taskdef name="wsimport" classname="com.sun.tools.ws.ant.WsImport">
<classpath path="${jaxws.classpath}"/>
</taskdef>
<target name="build" >
<!-- For these to work, the JAR files in tools/jaxws-ri must be included in Ant's classpath -->
<wsimport wsdl="http://localhost:8080/servertest/RandomTest?wsdl"
verbose="true"
sourcedestdir="src"
destdir="bin"
keep="true">
<xjcarg value="-enableIntrospection"/>
</wsimport>
</target>
</project>
4) Client code
4a) ClientTest.java - Actual client run from client
package test.wsclient;
import java.util.ArrayList;
import java.util.List;
import javax.xml.ws.BindingProvider;
import javax.xml.ws.Endpoint;
import javax.xml.ws.handler.Handler;
import javax.xml.ws.soap.AddressingFeature;
import org.nowhere.services.RandomTest;
import org.nowhere.services.RandomTestService;
public class ClientTest {
public static void main(String args[]) throws Exception {
ClientTest app = new ClientTest();
app.testAddressing();
public void testAddressing() throws Exception {
String REPLY_TO_ADDRESS = "http://localhost:8082/servertest/RandomCallback";
String FAULT_TO_ADDRESS = "http://localhost:8082/servertest/RandomCallbackFault";
RandomTestService service = new RandomTestService();
RandomTest port = service.getRandomTestPort(new AddressingFeature());
BindingProvider provider = (BindingProvider) port;
// pass the replyTo address to the handler
provider.getRequestContext().put("ReplyTo", REPLY_TO_ADDRESS);
provider.getRequestContext().put("FaultTo", FAULT_TO_ADDRESS);
// Register handlers to set the ReplyTo and FaultTo on the SOAP request sent to the WS endpoint
List<Handler> handlerChain = new ArrayList<Handler>();
handlerChain.add(new ClientHandler());
provider.getBinding().setHandlerChain(handlerChain);
// Start endpoint to receive callbacks from WS
Endpoint endpoint = Endpoint.publish(REPLY_TO_ADDRESS, new CallbackSEI());
try {
port.nextRandom(false);
} catch( Exception ex ) {
ex.printStackTrace();
} finally {
Thread.sleep(10000);
endpoint.stop();
System.exit(0);
4b) ClientHandler.java - Used to set the wsa ReplyTo address and FaultTo address when sending SOAP request from client to server
package test.wsclient;
import java.util.Set;
import javax.xml.namespace.QName;
import javax.xml.soap.SOAPEnvelope;
import javax.xml.soap.SOAPHeader;
import javax.xml.ws.handler.MessageContext;
import javax.xml.ws.handler.MessageContext.Scope;
import javax.xml.ws.handler.soap.SOAPHandler;
import javax.xml.ws.handler.soap.SOAPMessageContext;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
public class ClientHandler implements SOAPHandler<SOAPMessageContext> {
public ClientHandler() {};
@Override
public Set<QName> getHeaders() {
return null;
@Override
public void close(MessageContext arg0) {
@Override
public boolean handleFault(SOAPMessageContext context) {
return true;
protected void setAnAddress(SOAPHeader header, String tagName, String address) {
NodeList nodeListReplyTo = header.getElementsByTagName(tagName);
NodeList nodeListAddress = nodeListReplyTo.item(0).getChildNodes();
for (int i = 0; i < nodeListAddress.getLength(); i++) {
Node node = nodeListAddress.item(i);
if ("Address".equals(node.getLocalName())) {
node.setTextContent(address);
break;
protected String getMessageID(SOAPHeader header) {
NodeList nodeListMessageId = header.getElementsByTagName("MessageID");
return nodeListMessageId.item(0).getTextContent();
@Override
public boolean handleMessage(SOAPMessageContext context) {
Boolean isOutbound = (Boolean) context.get(SOAPMessageContext.MESSAGE_OUTBOUND_PROPERTY);
if (isOutbound) {
try {
SOAPEnvelope envelope = context.getMessage().getSOAPPart().getEnvelope();
SOAPHeader header = envelope.getHeader();
/* extract the generated MessageID */
String messageID = getMessageID(header);
context.put("MessageID", messageID);
context.setScope("MessageID", Scope.APPLICATION);
/* change ReplyTo address */
setAnAddress(header, "ReplyTo", (String) context.get("ReplyTo"));
setAnAddress(header, "FaultTo", (String) context.get("FaultTo"));
} catch (Exception ex) {
throw new RuntimeException(ex);
return true;
4c) CallbackSEI.java - endpoint on the client for server to send the SOAP response back to the client
package test.wsclient;
import javax.annotation.Resource;
import javax.jws.Oneway;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.xml.ws.Action;
import javax.xml.ws.RequestWrapper;
import javax.xml.ws.WebServiceContext;
import javax.xml.ws.soap.Addressing;
@WebService
@Addressing
//@HandlerChain(file = "/handler-chain.xml")
public class CallbackSEI {
@Resource
private WebServiceContext context;
* If there is no namespace specified in the method below, then the CallbackSEI needs to be in the same package as the
* WS endpoint.
@Oneway
@Action(input="http://services.nowhere.org/RandomTest/nextRandomResponse")
@RequestWrapper(localName="nextRandomResponse", targetNamespace="http://services.nowhere.org/")
public void handleNotification(@WebParam(name="return")long random) {
System.out.println("Asynch response received");
System.out.println( random );
//System.out.println("This response relates to the message ID: "+ getMessageID());
In summary:
Server is listening on port 8080
Client will listen in port 8082 for the callback from the server for the SOAP response
Now when I run the client, I see that the proper behaviour as far as ws-addressing is concerned. That is:
client -- SOAP request ( on port 8080 ) --> server
client <-- HTTP 202 ( empty HTTP body ) --- server
client <-- SOAP response ( on port 8082 ) --- server
All well and good, except that I am getting a NullPointerException on the client side when I call the operation.
With debugging of the SOAP request and responses, I get the following output:
---[HTTP request - http://localhost:8080/servertest/RandomTest]---
Accept: text/xml, multipart/related
Content-Type: text/xml; charset=utf-8
SOAPAction: "http://services.nowhere.org/RandomTest/nextRandomRequest"
User-Agent: JAX-WS RI 2.2.8 svn-revision#13980
<?xml version='1.0' encoding='UTF-8'?><S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><S:Header><To xmlns="http://www.w3.org/2005/08/addressing">http://localhost:8080/servertest/RandomTest</To><Action xmlns="http://www.w3.org/2005/08/addressing">http://services.nowhere.org/RandomTest/nextRandomRequest</Action><ReplyTo xmlns="http://www.w3.org/2005/08/addressing">
<Address>http://localhost:8082/servertest/RandomCallback</Address>
</ReplyTo><FaultTo xmlns="http://www.w3.org/2005/08/addressing">
<Address>http://localhost:8082/servertest/RandomCallbackFault</Address>
</FaultTo><MessageID xmlns="http://www.w3.org/2005/08/addressing">uuid:bcd2f6ef-3034-49e8-b837-dbd6a772fb93</MessageID></S:Header><S:Body><ns2:nextRandom xmlns:ns2="http://services.nowhere.org/"><arg0>false</arg0></ns2:nextRandom></S:Body></S:Envelope>--------------------
---[HTTP response - http://localhost:8080/servertest/RandomTest - 202]---
null: HTTP/1.1 202 Accepted
Content-Length: 0
Content-Type: text/xml;charset=UTF-8
Date: Fri, 18 Jul 2014 08:34:36 GMT
Server: Apache-Coyote/1.1
java.lang.NullPointerException
at com.sun.proxy.$Proxy38.nextRandom(Unknown Source)
at test.wsclient.ClientTest.testAddressing(ClientTest.java:43)
at test.wsclient.ClientTest.main(ClientTest.java:18)
---[HTTP request]---
Cache-control: no-cache
Host: localhost:8082
Content-type: text/xml; charset=UTF-8
Content-length: 704
Connection: keep-alive
Pragma: no-cache
User-agent: Apache CXF 2.7.7.redhat-1
Accept: */*
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Header><Action xmlns="http://www.w3.org/2005/08/addressing">http://services.nowhere.org/RandomTest/nextRandomResponse</Action><MessageID xmlns="http://www.w3.org/2005/08/addressing">urn:uuid:65d8d7fc-09e4-494a-a9c5-0a01faf4d7e6</MessageID><To xmlns="http://www.w3.org/2005/08/addressing">http://localhost:8082/servertest/RandomCallback</To><RelatesTo xmlns="http://www.w3.org/2005/08/addressing">uuid:bcd2f6ef-3034-49e8-b837-dbd6a772fb93</RelatesTo></soap:Header><soap:Body><ns2:nextRandomResponse xmlns:ns2="http://services.nowhere.org/"><return>2870062781194370669</return></ns2:nextRandomResponse></soap:Body></soap:Envelope>--------------------
Asynch response received
2870062781194370669
As you can see from the output above, the proxy is throwing an Exception when it receives the HTTP 202 response.
Any ideas ?I think I have found when I get this error and probably I have found a bug. I will appreciate if someone can confirm this.
In my BPEL project setup, my BPEL process's wsdl file imports another wsdl from different namespace. Here is sample snippet -
<wsdl:definitions targetNamespace="http://namespace/1">
<wsdl:import namespace="http://namespace/2" location="resources/another.wsdl"/>
<plnk:partnerLinkType....../>
</wsdl:definitions>
Please let me know. I checked the bundled samples with Oracle BPEL PM and did not find any similar case where process wsdl imports another wsdl.
Thank you.
Meghana -
Nullpointerexception adding SOAPHeaderElements
I am receiving a NullpointerException adding soap header elements to a soap messagecontext in a handler file. I am trying to add security header information to the header of a soap message calling a web service. I have tried many different methods to do this and I keep going down rabbit holes. I have been working on this for over two weeks. Please help
FOLLOWING IS THE EXCEPTION:
Event: handleRequest
Endpoint Method: CreateAccountCheckingRequest
java.lang.NullPointerException
at MessageHandler.getSOAPHeader(MessageHandler.java:146)
at MessageHandler.logSoapMessage(MessageHandler.java:94)
at MessageHandler.handleRequest(MessageHandler.java:63)
at weblogic.webservice.core.HandlerChainImpl.handleRequest(HandlerChainI
mpl.java:143)
at com.bea.wlw.runtime.jws.call.SoapCall.applyHandlerChain(SoapCall.java
:580)
at com.bea.wlw.runtime.jws.call.SoapHttpCall.invoke(SoapHttpCall.java:11
3)
at com.bea.wlw.runtime.jws.call.SoapHttpCall.invoke(SoapHttpCall.java:79
FOLLOWING IS THE SECTION OF THE MESSAGEHANDLER FILE WHERE THE PROBLEM IS BEING EXPERIENCED:
Line 146 is: SOAPHeaderElement ele1 = (SOAPHeaderElement) header.addHeaderElement(security);
protected void getSOAPHeader(MessageContext mc) throws SOAPException
String headerString;
SOAPMessageContext messageContext = (SOAPMessageContext) mc;
SOAPMessage soapmsg = messageContext.getMessage();
SOAPEnvelope env = soapmsg.getSOAPPart().getEnvelope();
SOAPHeader header = env.getHeader();
Name security = env.createName("Security", "wsse", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd");
SOAPHeaderElement ele1 = (SOAPHeaderElement) header.addHeaderElement(security);
Name must = env.createName("env:mustUnderstand");
ele1.addAttribute(must, "1");
SOAPElement ele2 = (SOAPElement)ele1.addChildElement("usernameToken","wsse");
Name token = env.createName("Id","wsu","http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd");
ele2.addAttribute(token,"Id-dFQDZm_34ewPYtaARIJ_4BfI");
SOAPElement ele3 = (SOAPElement)ele2.addChildElement("Username","wsse");
ele3.addTextNode("weblogic");
ele2.addChildElement("Password","wsse").addNamespaceDeclaration("Type","http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText").addTextNode("weblogic");
Iterator iter = header.getChildElements();
while ( iter.hasNext() )
SOAPHeaderElement element = (SOAPHeaderElement) iter.next();
System.out.println ("---> Header, name = " + element.getElementName() + ", value = " + element.getValue());
StringRuntimeContext stringRuntimeContext = (StringRuntimeContext)PrimitiveContextFactory.create ( element.getValue() );
WorkContextMap map = WorkContextHelper.getWorkContextHelper().getWorkContextMap();
map.put ( element.getElementName().toString(), stringRuntimeContext );
Please, someone, help me with this before I get fired...I'm locking this thread since it's a cross-post.
Kaj -
Sender Mail Adapter - java.lang.NullPointerException in CC monitoring
hi,
I configured my Sender Mail Adapter correctly.
I have the correct POP URL, authentication. I'm not using PayloadSwapBean right now.
I can't get rid of the exception inside my Channel monitoring.
exception caught during processing mail message; java.lang.NullPointerException
does anyone know why?
I've been told the POP account has emails already.
I will try to create an outlook account for this POP e-mail account in the mean time to see the e-mails.
Thank youthanks aaron.
I don't see the folder ./SYS/../j2ee/...
will it be under another folder? I don't see a trace log folder either.
I think the problem might be in the Module tab.
I tried.
AF_Modules/PayloadSwapBean
localejbs/AF_Modules/PayloadSwapBean
/localejbs/AF_Modules/PayloadSwapBean
sap.com/com.sap.aii.adapter.mail.app/XIMailAdapterBean
localejbs/sap.com/com.sap.aii.adapter.mail.app/XIMailAdapterBean
/localejbs/sap.com/com.sap.aii.adapter.mail.app/XIMailAdapterBean
they all produce the same error. I wonder if these Beans actually exist.
I think we might have to reinstall this Mail Adapter altogether.
Or maybe it's really the connection to the Mail Server. But would it display this kind of message.
This is what I'm looking at.
Also, i had to use this URL
pop://server:995/
(995 is using SSL and it is the default port). When I use this, I see the Java Null Pointer Exception a lot less frequently. Weird. -
Data Federator Connection to R3 - java.lang.NullPointerException
Hi.
We are trying to add a SAP R3 DataSource in Data Federator XI 3.0 SP2.
Test Connection gives us the following message: "The connection was established but there is no table for the given connection parameters", what it seems to be ok according to the SAP doc.
However, when we try to get a list of the Functions or Infosets in the SAP system, an error comes because of a "java.lang.NullPointerException". Checking the application log we get the following:
2010/03/30 12:21:27.059|<=|||0|26537104| |||||||||||||||"[LeSelect.Api.LSStatementImpl] - [Execution Thread 4]Executing query: CALL executeConnectorCommand '/TEST//TEST/user_bla/sources/draft/R3SYS', 'GET_FUNCTION_LIST * * 200'"
2010/03/30 12:21:27.074|>=|E||0|26537104| |||||||||||||||"[LeSelect.Core.n] - [Execution Thread 4]Bad Wrapper Error:
java.lang.NullPointerException
at LeSelect.Wrappers.SAPR3.H.F(y:343)
at LeSelect.Wrappers.SAPR3.H.executeCommand(y:285)
at LeSelect.Core.B.D.R(y:151)
at LeSelect.Core.QueryEngine.H.p.G(y:131)
at LeSelect.Core.QueryEngine.H.p.A(y:105)
at LeSelect.Core.QueryEngine.B.J.A(y:72)
at LeSelect.Core.QueryEngine.Executor.y.A(y:227)
at LeSelect.Core.QueryEngine.m.A(y:284)
at LeSelect.Api.LSStatementImpl.lsExecuteQuery(y:314)
at LeSelect.B.E.D.V(y:935)
at LeSelect.B.E.K.B(y:105)
at LeSelect.B.E.G$_A.run(y:691)"
We registered the callback program and did all of the steps indicated for the installation, also checked the possible sources of the error according to OSS Note 1278491.
Any idea how to solve this? Thanks.Hello, we have the similar problem: while connecting from Data Federator to SAP ERP we get the following error - "Wrapper /ZTEST/sources/ZTEST reported an exception which is not a WrapperException: java.lang.NullPointerException: null"
It's necessary to install "SAP BusinessObjects Data Federator Infoset, SAP Query and ABAP Functions Connector Prototype"
SAP BusinessObjects Web Intelligence Reporting for SAP ERP
for connection to SAP ERP.
Are there any ideas? Thanks -
PI Java Mapping NullPointerException
Hi Gurus,
I'm having some troubles doing the mapping through java mapping in PI.
I've done the java class in the SAP NWDS and imported it on PI through the ESR.
Now i'm trying to test through the SOAP and i've found the following error in the "Communication Channel Monitor":
500 Internal Server Error SAP NetWeaver Application Server/Java AS
java.lang.NullPointerException: while trying to invoke the method com.sap.aii.af.sdk.xi.lang.Binary.getBytes() of a null object returned from com.sap.aii.af.sdk.xi.mo.xmb.XMBPayload.getContent()
And the following error in the SXMB_MONI:
<SAP:Category>XIServer</SAP:Category>
<SAP:Code area="INTERNAL">CLIENT_SEND_FAILED</SAP:Code>
<SAP:P1>500</SAP:P1>
<SAP:P2>Internal Server Error</SAP:P2>
<SAP:P3>(See attachment HTMLError for details)</SAP:P3>
<SAP:P4 />
<SAP:AdditionalText />
<SAP:Stack>Error while sending by HTTP (error code: 500 , error text: Internal Server Error) (See attachment HTMLError for details)</SAP:Stack>
I've developed the code below:
public class PI_Mapping_IF extends AbstractTransformation {
public void transform(TransformationInput in, TransformationOutput out) throws StreamTransformationException {
this.execute(in.getInputPayload().getInputStream(), out.getOutputPayload().getOutputStream());
public void execute(InputStream in, OutputStream out) throws StreamTransformationException {
try
// Inicio do java mapping
getTrace().addInfo("JAVA Mapping Iniciado"); //Log para o PI/XI
// Declarações referentes ao XML de entrada
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document xml_in = db.parse(in);
// Declarações referentes ao XML de saída
Document xml_out = db.newDocument();
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
// Remove o standalone
xml_in.setXmlStandalone(true);
// Declara a estrutura que a RFC irá receber
Element root = xml_out.createElement("ns1:ZFSD_VMOI_UPLOAD_CF_PG");
root.setAttribute("xmlns:ns1","urn:sap-com:document:sap:rfc:functions");
xml_out.appendChild(root);
Element i_cenario = xml_out.createElement("I_CENARIO");
root.appendChild(i_cenario);
Element t_input = xml_out.createElement("T_INPUT");
root.appendChild(t_input);
Element item = xml_out.createElement("ITEM");
t_input.appendChild(item);
Element STRING = xml_out.createElement("STRING");
item.appendChild(STRING);
Element t_return = xml_out.createElement("T_RETURN");
root.appendChild(t_return);
Element item_r = xml_out.createElement("ITEM");
t_return.appendChild(item_r);
Element message = xml_out.createElement("MESSAGE");
item_r.appendChild(message);
// Verifica se existe algum filho no nó
NodeList nodos = xml_in.getChildNodes();
if (nodos.item(0) != null)
getTrace().addInfo("O nó(XML) possui filhos"); //Log para o PI/XI
// Declaração de variáveis
String ident = ""; // <Ident>
String buyer = ""; // <BuyerLineItemNum>
String result = ""; // <Ident>;<BuyerLineItemNum>;<Date>;<QuantityValue>
// Inicia a extração das informações do XML
try{
// Recupera o nó ShipToParty
NodeList nodeShip = xml_in.getElementsByTagName("ns0:ShipToParty");
Node node = nodeShip.item(0);
Element elemXML = (Element) node;
try{
NodeList nodeIdent = elemXML.getElementsByTagName("ns0:Ident");
Element nameElement = (Element) nodeIdent.item(0);
nodeIdent = nameElement.getChildNodes();
// Recupera o valor da chave <Ident>
ident = PI_Mapping_IF.VerifyNull(((Node) nodeIdent.item(0)).getNodeValue());
}catch(Exception e){
result += "0.0;";
// Recupera o nó ListOfMaterialGroupedPlanningDetail
NodeList nodeBuyer = xml_in.getElementsByTagName("ns0:MaterialGroupedPlanningDetail");
for (int i = 0; i < nodeBuyer.getLength(); i++) {
node = nodeBuyer.item(i);
elemXML = (Element) node;
try{
// Preenche a chave BuyerLineItemNum
NodeList nodeBuyerLine = elemXML.getElementsByTagName("ns0:BuyerLineItemNum");
Element elemBuyerLine = (Element) nodeBuyerLine.item(0);
nodeBuyerLine = elemBuyerLine.getChildNodes();
buyer = PI_Mapping_IF.VerifyNull(((Node) nodeBuyerLine.item(0)).getNodeValue());
}catch(Exception e){
buyer += "0;";
result = ident+";"+buyer+";";
Node nodeDt_Qnt = nodeBuyer.item(i);
Element elemDt_Qnt = (Element)nodeDt_Qnt;
NodeList nodeValores = elemDt_Qnt.getElementsByTagName("ns0:ScheduleDetail");
for (int j = 0; j < nodeValores.getLength(); j++) {
node = nodeValores.item(j);
elemXML = (Element) node;
try{
// Preenche a chave Date
NodeList modelExtra = elemXML.getElementsByTagName("ns0:Date");
Element extraElement = (Element) modelExtra.item(0);
modelExtra = extraElement.getChildNodes();
result += PI_Mapping_IF.VerifyNull(((Node) modelExtra.item(0)).getNodeValue())+";";
}catch(Exception e){
result += "//;";
try {
// Preenche a chave QuantityValue
NodeList modelURL = elemXML.getElementsByTagName("ns0:QuantityValue");
Element urlElement = (Element) modelURL.item(0);
modelURL = urlElement.getChildNodes();
result += PI_Mapping_IF.VerifyNull(((Node) modelURL.item(0)).getNodeValue())+";";
} catch (Exception e) {
result += "0.0;";
// Marca o final do registro
result += "||";
// Preenche os nós itens
Text srcxml = xml_out.createTextNode(result);
STRING.appendChild(srcxml);
result = "";
buyer = "";
}catch(Exception e){
// Remove o standalone
xml_out.setXmlStandalone(true);
// Preenche o Cenario
Text cenario = xml_out.createTextNode("P&G");
i_cenario.appendChild(cenario);
// Preenche mensagem de retorno
Text msgxml = xml_out.createTextNode("XML lido com sucesso!");
message.appendChild(msgxml);
// Escreve a saida do XML
transformer.transform(new DOMSource(xml_out), new StreamResult(out));
getTrace().addInfo("Fim da execução do Java Mapping");
} catch (ParserConfigurationException e) {
getTrace().addWarning(e.getMessage());
throw new StreamTransformationException("Can not create DocumentBuilder.", e);
} catch (SAXException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (TransformerConfigurationException e) {
e.printStackTrace();
} catch (TransformerException e) {
e.printStackTrace();
Am i doing anything wrong in the code? Where can this nullpointerexception be triggered?
Thanks.These three xml are the same:
<?xml version="1.0"?><a:xml xmlns:a="urn:123">root</a:xml>
<?xml version="1.0"?><xml xmlns="urn:123">root</xml>
<?xml version="1.0"?><ns0:xml xmlns:ns0="urn:123">root</ns0:xml>
But your code will work only with last one, because it doesn't bound namespace to prefix ns0. -
HI Everyone!
I try to deploy my web dynpro project to SAP J2EE engine. Configuration about SAP J2EE Engine is OK, but there is an error during the deployment. Here is the deployment trace:
2007-6-28 14:56:27 /userOut/daView_category (com.sap.ide.eclipse.deployer.DVBaseLog) [Thread[Deploy Thread,6,main]] INFO: deployment trace
14:56:24.207 [info #300] [#4]: Trying to connect to 'secude-vmcn0001:50004' as 'administrator'
14:56:24.207 [debug #100] [#4]: Session::getContext.[ B E G I N ].timerId=16
14:56:25.161 [debug #100] [#4]: Session::getContext.[ E N D ].timerId=[id:#16, elapsed: 954 ms.]
14:56:25.161 [info #300] [#4]: Connected to 'secude-vmcn0001:50004' as 'administrator'
14:56:25.161 [debug #100] [#4]: DeployProcessor::ctor:New deploy processor created.deployerId=4
14:56:25.161 [info #300] [#4]: +++++ Starting D E P L O Y action +++++
14:56:25.161 [info #300] [#4]: Selected archives for deployment
14:56:25.161 [info #300] [#4]: D:\NetWeaverWorkspace\Workspace\Dashboard\Dashboard.ear
14:56:25.536 [debug #100] [#4]: DeployProcessor::deploy:going to generate Session id, deployerId=4
14:56:25.755 [debug #100] [#4]: DeployProcessor::deploy:got Session id='14',time:[id:#17, elapsed: 594 ms.], deployerId=4
14:56:25.974 [info #300] [#4]: Upload archives to the server.Remote upload path is 'C:\SAP\JP1\JC00\j2ee\cluster\server0\temp\tcbldeploy_controller\archives\14'
14:56:25.974 [debug #300] [#4]: DeployProcessor::uploadItemsToServer:Going to upload 'D:\NetWeaverWorkspace\Workspace\Dashboard\Dashboard.ear' on the server.deployerId=4
14:56:26.427 [info #300] [#4]: File 'D:\NetWeaverWorkspace\Workspace\Dashboard\Dashboard.ear' uploaded successfully as 'C:/SAP/JP1/JC00/j2ee/cluster/server0/temp/tcbldeploy_controller/archives/14/Dashboard.ear'. Time:[id:#18, elapsed: 453 ms.]
14:56:26.427 [info #300] [#4]: Archives uploaded.time:[#18: 0.453 sec]
14:56:26.427 [debug #100] [#4]: DeployProcessor::deployItems:enter.timerId=19, deployerId=4
14:56:26.427 [debug #100] [#4]: DeployProcessor::internalCreateAndInitDeployer:get deployer from server, deployerId=4
14:56:26.427 [debug #100] [#4]: DeployProcessor::internalCreateAndInitDeployer:deployer get successfully:[id:#20, elapsed: 0 ms.], deployerId=4
14:56:26.630 [info #300] [#4]: component version handling rule is UpdateAllVersions
14:56:26.849 [info #300] [#4]: Error strategies:
14:56:26.849 [debug #100] [#4]: DeployProcessor::internalCreateAndInitDeployer:deployer initialized sucessfully:[id:#20, elapsed: 422 ms.], deployerId=4
14:56:26.849 [debug #100] [#4]: DeployProcessor::internalCreateAndInitDeployer:total time:[#20: 0.422 sec], deployerId=4
14:56:26.849 [info #300] [#4]: Starting deployment
14:56:27.177 [debug #100] [#4]: DeployProcessor::internalMapSdus:sduMapperVisitor.setCompositeDeploymentItem(null),remoteSdu=name: 'null', vendor: 'null', location: 'LOKAL', version: '0.2007.06.28.14.28.59', software type: 'J2EE', dependencies: '[]'
14:56:27.177 [debug #300] [#4]: DeployProcessor::deployItems:finally.Total Time:[#19: 0.75 sec], deployerId=4
14:56:27.177 [info #300] [#4]: +++++ End D E P L O Y action +++++
And here is the exception detail:
2007-6-28 14:56:27 /userOut/daView_category (com.sap.ide.eclipse.deployer.DVBaseLog) [Thread[Deploy Thread,6,main]] ERROR: java.lang.NullPointerException: sdu name can not be null.
at com.sap.engine.services.dc.api.model.impl.SduImpl.<init>(SduImpl.java:39)
at com.sap.engine.services.dc.api.model.impl.SdaImpl.<init>(SdaImpl.java:51)
at com.sap.engine.services.dc.api.model.impl.ModelFactoryImpl.createSda(ModelFactoryImpl.java:43)
at com.sap.engine.services.dc.api.model.SduMapperVisitor.createSda(SduMapperVisitor.java:52)
at com.sap.engine.services.dc.api.model.SduMapperVisitor.visit(SduMapperVisitor.java:64)
at com.sap.engine.services.dc.repo.impl.SdaImpl.accept(SdaImpl.java:136)
at com.sap.engine.services.dc.api.deploy.impl.DeployProcessorImpl.internalMapSdus(DeployProcessorImpl.java:704)
at com.sap.engine.services.dc.api.deploy.impl.DeployProcessorImpl.deployItems(DeployProcessorImpl.java:487)
at com.sap.engine.services.dc.api.deploy.impl.DeployProcessorImpl.deploy(DeployProcessorImpl.java:155)
at com.sap.ide.eclipse.deployer.dc.deploy.DeployProcessor70.deploy(DeployProcessor70.java:185)
at com.sap.ide.eclipse.sdm.threading.DCDeployThread.run(DCDeployThread.java:115)
It seems that there is something wrong about 'SDU', but i don't know what is it, and i can not find the answer both in sdn.sap.com and here.
Anyone can help me on this?
Thanks in Advance,
MKHi Sumit,
Thank you for your concern.
Below is a trace file on my server:
C:\SAP\JP1\JC00\j2ee\cluster\server0\log\defaultTrace.0.trc
#1.5 #000C296B3F6A000D0000000200000A3000EF90978C2E8C29#1183013784131#/System/Server/Deployment##com.sap.engine.services.tcxblxdeploy_controller#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Info#1#com.sap.engine.services.tcxblxdeploy_controller#Plain###The session id 14 is associated with correlator id 67431500000169001. Use this correlator id to filter the trace and log messages.#
#1.5 #000C296B3F6A000D0000000300000A3000EF90978C2E8C29#1183013784131#/System/Server/Deployment##com.sap.engine.services.tcxblxdeploy_controller#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Info#1#com.sap.engine.services.tcxblxdeploy_controller#Plain###++++++++++++++ Starting deployment ++++++++++++++#
#1.5 #000C296B3F6A000D0000000400000A3000EF90978C2E8C29#1183013784131#/System/Server/Deployment##com.sap.engine.services.tcxblxdeploy_controller#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Info#1#com.sap.engine.services.tcxblxdeploy_controller#Plain###Archives specified for deployment are: #
#1.5 #000C296B3F6A000D0000000500000A3000EF90978C2E8C29#1183013784131#/System/Server/Deployment##com.sap.engine.services.tcxblxdeploy_controller#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Info#1#com.sap.engine.services.tcxblxdeploy_controller#Plain###C:/SAP/JP1/JC00/j2ee/cluster/server0/temp/tcbldeploy_controller/archives/14/Dashboard.ear#
#1.5 #000C296B3F6A000D0000000600000A3000EF90978C2E8C29#1183013784131#/System/Server/Deployment##com.sap.engine.services.tcxblxdeploy_controller#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Info#1#com.sap.engine.services.tcxblxdeploy_controller#Plain###Start loading archives ...#
#1.5 #000C296B3F6A000D0000000700000A3000EF90978C2E8C29#1183013784147#/System/Server/Deployment##com.sap.engine.services.tcxblxdeploy_controller#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Info#1#com.sap.engine.services.tcxblxdeploy_controller#Plain###Archives are loaded.#
#1.5 #000C296B3F6A000D0000000800000A3000EF90978C2E8C29#1183013784147#/System/Server/Deployment##com.sap.engine.services.tcxblxdeploy_controller#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Info#1#com.sap.engine.services.tcxblxdeploy_controller#Plain###Error Handling Action: 'UndeploymentAction', Error Handling Strategy: 'OnErrorStop'.
Error Handling Action: 'DeploymentAction', Error Handling Strategy: 'OnErrorStop'.
Error Handling Action: 'PrerequisitesCheckAction', Error Handling Strategy: 'OnErrorStop'.
Version Handling Rule: 'UpdateAllVersions'.
Deployment Strategy: 'normal deploy strategy'.
Life Cycle Deployment Strategy: 'bulk deploy strategy'.
There are no batch filters specified.#
#1.5 #000C296B3F6A000D0000000900000A3000EF90978C2E8C29#1183013784194#/System/Server/Deployment##com.sap.engine.services.tcxblxdeploy_controller#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Info#1#com.sap.engine.services.tcxblxdeploy_controller#Plain###The batch for session id 14 will be executed with normal parallelism strategy.#
#1.5 #000C296B3F6A000D0000000A00000A3000EF90978C2E8C29#1183013784272#/System/Server/Services/Deploy##com.sap.engine.services.deploy#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Warning#1#com.sap.engine.services.deploy#Plain###A component loader with name sap.com/tcwddispwda doesn't exist, because is stopped or not deployed.#
#1.5 #000C296B3F6A000D0000000B00000A3000EF90978C2E8C29#1183013784272#/System/Server/Services/Deploy##com.sap.engine.services.deploy#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Warning#1#com.sap.engine.services.deploy#Plain###A component loader with name library:tcddicddicruntime doesn't exist, because is stopped or not deployed.#
#1.5 #000C296B3F6A000D0000000C00000A3000EF90978C2E8C29#1183013784272#/System/Server/Services/Deploy##com.sap.engine.services.deploy#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Warning#1#com.sap.engine.services.deploy#Plain###A component loader with name library:com.sap.aii.util.rb doesn't exist, because is stopped or not deployed.#
#1.5 #000C296B3F6A000D0000000D00000A3000EF90978C2E8C29#1183013784272#/System/Server/Services/Deploy##com.sap.engine.services.deploy#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Warning#1#com.sap.engine.services.deploy#Plain###A component loader with name library:com.sap.aii.util.xml doesn't exist, because is stopped or not deployed.#
#1.5 #000C296B3F6A000D0000000E00000A3000EF90978C2E8C29#1183013784272#/System/Server/Services/Deploy##com.sap.engine.services.deploy#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Warning#1#com.sap.engine.services.deploy#Plain###A component loader with name library:com.sap.aii.proxy.framework doesn't exist, because is stopped or not deployed.#
#1.5 #000C296B3F6A000D0000000F00000A3000EF90978C2E8C29#1183013784272#/System/Server/Services/Deploy##com.sap.engine.services.deploy#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Warning#1#com.sap.engine.services.deploy#Plain###A component loader with name library:tc~cmi doesn't exist, because is stopped or not deployed.#
#1.5 #000C296B3F6A000D0000001000000A3000EF90978C2E8C29#1183013784272#/System/Server/Services/Deploy##com.sap.engine.services.deploy#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Warning#1#com.sap.engine.services.deploy#Plain###A component loader with name library:com.sap.aii.util.misc doesn't exist, because is stopped or not deployed.#
#1.5 #000C296B3F6A000D0000001100000A3000EF90978C2E8C29#1183013784272#/System/Server/Services/Deploy##com.sap.engine.services.deploy#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Warning#1#com.sap.engine.services.deploy#Plain###A component loader with name library:tcddicddicservices doesn't exist, because is stopped or not deployed.#
#1.5 #000C296B3F6A000D0000001200000A3000EF90978C2E8C29#1183013784272#/System/Server/Services/Deploy##com.sap.engine.services.deploy#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Warning#1#com.sap.engine.services.deploy#Plain###A component loader with name library:tcgraphicsigs doesn't exist, because is stopped or not deployed.#
#1.5 #000C296B3F6A000D0000001300000A3000EF90978C2E8C29#1183013784366#/System/Server/Services/Deploy##com.sap.engine.services.deploy#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Warning#1#com.sap.engine.services.deploy#Plain###JLinEE validation of application local/Dashboard returned result
WARNINGS:
References Test: Count of deploy time references (described in META-INF/SAP_MANIFEST.MF) and runtime references (described in META-INF/application-j2ee-engine.xml) does not match., file: Dashboard.ear, column 0, line 0, severity: warning
References Test: There are no matching deploy time references (described in META-INF/SAP_MANIFEST.MF) for the following runtime references [sap.com/tcwddispwda, sap.com/com.sap.mw.jco, sap.com/tcddicddicruntime, sap.com/com.sap.aii.util.rb, sap.com/com.sap.aii.util.xml, sap.com/webservices_lib, sap.com/com.sap.aii.proxy.framework, sap.com/sapxmltoolkit, sap.com/tccmi, sap.com/com.sap.security.api.sda, sap.com/com.sap.util.monitor.jarm, sap.com/com.sap.aii.util.misc, sap.com/tcddicddicservices, sap.com/com.sap.lcr.api.cimclient, sap.com/tcgraphics~igs, sap.com/sld] (described in the META-INF/application-j2ee-engine.xml)., file: Dashboard.ear, column 0, line 0, severity: warning
#1.5 #000C296B3F6A000D0000001400000A3000EF90978C2E8C29#1183013784366#/System/Server/Services/Deploy##com.sap.engine.services.deploy#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Error#1#com.sap.engine.services.deploy#Plain#Exception while validating application local/Dashboard.
No one of the [] containers, which processed it, returned deployed component names.
The registered containers in this moment were [com.sap.security.ume, app_libraries_container, Cache Configuration Upload, servlet_jsp, dbcontentcontainer, connector, Cluster File System, JMSConnector, appclient, dbschemacontainer, orpersistence, JDBCConnector, EJBContainer, webservices_container, scheduler~container].
Possible reasons :
1.An AS Java service, which is providing a container, is stopped or not deployed.
2.The containers, which processed it, are not implemented correct. They deployed or started initially the application, but didn't return deployed components in the application deployment info.###
#1.5 #000C296B3F6A000D0000001700000A3000EF90978C2E8C29#1183013784366#/System/Server/Services/Deploy##com.sap.engine.services.deploy#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Error#1#com.sap.engine.services.deploy#Plain#Exception in operation deploy with application local/Dashboard.###
#1.5 #000C296B3F6A000D0000001B00000A3000EF90978C2E8C29#1183013784397#/System/Server##java.lang.Package#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Error#1#java.lang.Package#Java#error.action.filter#com/sap/engine/services/mngt_model/localization.properties#Exception thrown by Action Filter: com.sap.engine.services.mngt_model.spi.ActionFilteringException: com.sap.engine.services.deploy.server.utils.DSRemoteException: Application local/Dashboard is not deployed..Action will not be delivered to domain: connector. Action is: APPLICATION_DEPLOYED#3#com.sap.engine.services.mngt_model.plugins.ApplicationActionFilter@d46ed0#connector#APPLICATION_DEPLOYED#
#1.5 #000C296B3F6A000D0000001D00000A3000EF90978C2E8C29#1183013784397#/System/Server##java.lang.Package#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Error#1#java.lang.Package#Java#error.action.filter#com/sap/engine/services/mngt_model/localization.properties#Exception thrown by Action Filter: com.sap.engine.services.mngt_model.spi.ActionFilteringException: com.sap.engine.services.deploy.server.utils.DSRemoteException: Application local/Dashboard is not deployed..Action will not be delivered to domain: servlet_jsp. Action is: APPLICATION_DEPLOYED#3#com.sap.engine.services.mngt_model.plugins.ApplicationActionFilter@d46ed0#servlet_jsp#APPLICATION_DEPLOYED#
#1.5 #000C296B3F6A000D0000001F00000A3000EF90978C2E8C29#1183013784397#/System/Server##java.lang.Package#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Error#1#java.lang.Package#Java#error.action.filter#com/sap/engine/services/mngt_model/localization.properties#Exception thrown by Action Filter: com.sap.engine.services.mngt_model.spi.ActionFilteringException: com.sap.engine.services.deploy.server.utils.DSRemoteException: Application local/Dashboard is not deployed..Action will not be delivered to domain: appclient. Action is: APPLICATION_DEPLOYED#3#com.sap.engine.services.mngt_model.plugins.ApplicationActionFilter@d46ed0#appclient#APPLICATION_DEPLOYED#
#1.5 #000C296B3F6A000D0000002100000A3000EF90978C2E8C29#1183013784397#/System/Server##java.lang.Package#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Error#1#java.lang.Package#Java#error.action.filter#com/sap/engine/services/mngt_model/localization.properties#Exception thrown by Action Filter: com.sap.engine.services.mngt_model.spi.ActionFilteringException: com.sap.engine.services.deploy.server.utils.DSRemoteException: Application local/Dashboard is not deployed..Action will not be delivered to domain: dbpool. Action is: APPLICATION_DEPLOYED#3#com.sap.engine.services.mngt_model.plugins.ApplicationActionFilter@d46ed0#dbpool#APPLICATION_DEPLOYED#
#1.5 #000C296B3F6A000D0000002300000A3000EF90978C2E8C29#1183013784397#/System/Server##java.lang.Package#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Error#1#java.lang.Package#Java#error.action.filter#com/sap/engine/services/mngt_model/localization.properties#Exception thrown by Action Filter: com.sap.engine.services.mngt_model.spi.ActionFilteringException: com.sap.engine.services.deploy.server.utils.DSRemoteException: Application local/Dashboard is not deployed..Action will not be delivered to domain: jmsconnector. Action is: APPLICATION_DEPLOYED#3#com.sap.engine.services.mngt_model.plugins.ApplicationActionFilter@d46ed0#jmsconnector#APPLICATION_DEPLOYED#
#1.5 #000C296B3F6A000D0000002500000A3000EF90978C2E8C29#1183013784397#/System/Server/Services/Deploy##com.sap.engine.services.deploy#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Error#1#com.sap.engine.services.deploy#Plain#Exception while validating application local/Dashboard.
No one of the [] containers, which processed it, returned deployed component names.
The registered containers in this moment were [com.sap.security.ume, app_libraries_container, Cache Configuration Upload, servlet_jsp, dbcontentcontainer, connector, Cluster File System, JMSConnector, appclient, dbschemacontainer, orpersistence, JDBCConnector, EJBContainer, webservices_container, scheduler~container].
Possible reasons :
1.An AS Java service, which is providing a container, is stopped or not deployed.
2.The containers, which processed it, are not implemented correct. They deployed or started initially the application, but didn't return deployed components in the application deployment info.###
#1.5 #000C296B3F6A000D0000002800000A3000EF90978C2E8C29#1183013784397#/System/Server/Deployment##com.sap.engine.services.tcxblxdeploy_controller#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Error#1#com.sap.engine.services.tcxblxdeploy_controller#Plain#An error occurred while deploying the deployment item 'local_Dashboard'.###
#1.5 #000C296B3F6A000D0000002B00000A3000EF90978C2E8C29#1183013784428#/System/Server/Deployment##com.sap.engine.services.tcxblxdeploy_controller#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Info#1#com.sap.engine.services.tcxblxdeploy_controller#Plain###Unlocking the Deploy.#
#1.5 #000C296B3F6A000D0000002C00000A3000EF90978C2E8C29#1183013784428#/System/Server/Deployment##com.sap.engine.services.tcxblxdeploy_controller#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Error#1#com.sap.engine.services.tcxblxdeploy_controller#Plain#An error occurred while deploying the deployment item 'local_Dashboard'.; nested exception is:
java.rmi.RemoteException: class com.sap.engine.services.dc.gd.DeliveryException: An error occurred during deployment of sdu id: local_Dashboard
sdu file path: C:\SAP\JP1\JC00\j2ee\cluster\server0\temp\tcbldeploy_controller\archives\14\Dashboard.ear
version status: NEW
deployment status: Admitted
description:
1. Error:
Error occurred while deploying ear file C:\SAP\JP1\JC00\j2ee\cluster\server0\temp\tcbldeploy_controller\archives\14\Dashboard.ear.
Reason: Exception while validating application local/Dashboard.
No one of the [] containers, which processed it, returned deployed component names.
The registered containers in this moment were [com.sap.security.ume, app_libraries_container, Cache Configuration Upload, servlet_jsp, dbcontentcontainer, connector, Cluster File System, JMSConnector, appclient, dbschemacontainer, orpersistence, JDBCConnector, EJBContainer, webservices_container, scheduler~container].
Possible reasons :
1.An AS Java service, which is providing a container, is stopped or not deployed.
2.The containers, which processed it, are not implemented correct. They deployed or started initially the application, but didn't return deployed components in the application deployment info.
. Cannot deploy it.; nested exception is:
java.rmi.RemoteException: class com.sap.engine.services.deploy.server.utils.DSRemoteException: Error occurred while deploying ear file C:\SAP\JP1\JC00\j2ee\cluster\server0\temp\tcbldeploy_controller\archives\14\Dashboard.ear.
Reason: Exception while validating application local/Dashboard.
No one of the [] containers, which processed it, returned deployed component names.
The registered containers in this moment were [com.sap.security.ume, app_libraries_container, Cache Configuration Upload, servlet_jsp, dbcontentcontainer, connector, Cluster File System, JMSConnector, appclient, dbschemacontainer, orpersistence, JDBCConnector, EJBContainer, webservices_container, scheduler~container].
Possible reasons :
1.An AS Java service, which is providing a container, is stopped or not deployed.
2.The containers, which processed it, are not implemented correct. They deployed or started initially the application, but didn't return deployed components in the application deployment info.###
#1.5 #000C296B3F6A000D0000002F00000A3000EF90978C2E8C29#1183013784428#/System/Server/Deployment##com.sap.engine.services.tcxblxdeploy_controller#Administrator#4#####Thread[RMI/IIOP Worker [3],5,Dedicated_Application_Thread]##0#0#Info#1#com.sap.engine.services.tcxblxdeploy_controller#Plain###Deployment has finished#
Thanks,
MK -
Getting java.lang.NullpointerException while closing resultset aft using it
Hi,
I kindly request to share your ideas reg. my problem.
I am opening a database connection using connection pool and i am using two or more resultsets and statement objects.I am closing these objects at the end of their usage.But i am getting java.lang.NullpointerException when i close them(if i don't close them it works fine). what might be the reason. Had i did any thing wrong in the code.
please view the code
public String storeNewConnection(String CIRCLE,String DIVISION,String SUB_DIVISION,String SECTION,String CONSUMER_NAME,String FATHER_NAME,String STREET_NAME,String DOOR_NO,String TOWN_CITY,String LAND_MARK,String PINCODE,String STDCODE,String PHONE_NO,String EMAIL,String NEIGHBOUR_SCNO,String DOCUMENT_CODE,String LT_APR_NO,String year1,String month1,String day1,String PCBNO,String CONSUMER_STATUS,String SOCIAL_GROUP,String CATEGORY_SUPPLY,String LOCATION_PREMISES,String PURPOSE_OF_SUPPLY,String DURATION,String LOAD_TYPE,String CONNECTED_LOAD,String CONTRACTED_LOAD,String APPLICATION_FEE,String DEVELOPMENT_CHARGES,String SECURITY_DEPOSIT,String ADDL_SECURITY_DESPOSIT,String DEPOSITED_THRU,String DD_CHEQUE_DETAILS,String year2,String month2,String day2,String REMARKS,String POLE_NO)
int count=0;
Statement st=null;
ResultSet rs=null,rs1=null,rs2=null,rs3=null;
PreparedStatement pst=null;
String result="",query="",sysDate="",sysDate2="";
String reg_no = "";
try
st=con.createStatement();
//Check dates with sys date
String date1 =null;
String date2 =null;
if(! (year1.equals("") || month1.equals("") || day1.equals("")) )
date1=day1+"-"+month1+"-"+year1;
rs2=st.executeQuery("select round(to_date('"+date1+"','dd-Mon-yyyy')-to_date(sysdate,'dd-Mon-yy')) from dual");
rs2.next();
if(rs2.getInt(1) != 0)
return "false";
if(! (year2.equals("") || month2.equals("") || day2.equals("")) )
date2=day2+"-"+month2+"-"+year2;
rs3=st.executeQuery("select round(to_date('"+date2+"','dd-Mon-yyyy')-to_date(sysdate,'dd-Mon-yy')) from dual");
rs3.next();
if(rs3.getInt(1) != 0)
return "false";
rs1=st.executeQuery("select to_char(sysdate,'yyyyMONdd'),to_char(sysdate,'dd-Mon-yyyy') from dual");
rs1.next();
sysDate=rs1.getString(1);
sysDate2=rs1.getString(2);
rs=st.executeQuery("select max(SERIAL_NO) from NEW_CONNECTIONS where to_char(sysdate,'yyyy') = to_char(REG_DATE,'yyyy') and to_char(sysdate,'mm') = to_char(REG_DATE,'mm') and SUB_DIVISION_CODE = "+SUB_DIVISION+" and DIVISION_CODE = "+DIVISION+" and CIRCLE_CODE = "+CIRCLE+" ");
if(rs.next())
count = rs.getInt(1);
count++;
else
count=1;
query="insert into NEW_CONNECTIONS ( "+
" REG_NO,SERIAL_NO,REG_DATE,CIRCLE_CODE,DIVISION_CODE,SUB_DIVISION_CODE,SECTION_CODE, "+
" CONSUMER_NAME,FATHER_NAME,STREET_NAME,DOOR_NO,TOWN_CITY,LAND_MARK,PINCODE, "+
" STDCODE,PHONE_NO,EMAIL,NEIGHBOUR_SCNO,DOCUMENT_CODE,LT_APR_NO,LT_APR_DATE, "+
" PCBNO,CONSUMER_STATUS,SOCIAL_GROUP,CATEGORY_SUPPLY,LOCATION_PREMISES,PURPOSE_OF_SUPPLY,"+
" DURATION,LOAD_TYPE,CONNECTED_LOAD,CONTRACTED_LOAD,APPLICATION_FEE,DEVELOPMENT_CHARGES, "+
" SECURITY_DEPOSIT,ADDL_SECURITY_DEPOSIT,DEPOSITED_THRU,DD_CHEQUE_DETAILS,DD_CHEQUE_DATE,REMARKS,APPLICATION_STATUS,POLE_NO) "+
" values(?,?,'"+sysDate2+"',?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
pst = con.prepareStatement(query);
String cnt ="";
if(count <= 9)
cnt="0000";
else if(count <= 99)
cnt="000";
else if(count <= 999)
cnt="00";
else if(count <= 9999)
cnt="0";
cnt+=Integer.toString(count);
reg_no = CIRCLE+DIVISION+SUB_DIVISION+SECTION+"N"+cnt+sysDate;
int serial_no =count;
int pin = 0;
if(!PINCODE.equals(""))
pin =Integer.parseInt(PINCODE);
int std = 0;
if(!STDCODE.equals(""))
std = Integer.parseInt(STDCODE);
int status = Integer.parseInt(CONSUMER_STATUS);
int social_group = Integer.parseInt(SOCIAL_GROUP);
int supply = Integer.parseInt(CATEGORY_SUPPLY);
int location = Integer.parseInt(LOCATION_PREMISES);
int purpose = Integer.parseInt(PURPOSE_OF_SUPPLY);
int duration = Integer.parseInt(DURATION);
int laod_type = Integer.parseInt(LOAD_TYPE);
float conn_load = Float.parseFloat(CONNECTED_LOAD);
int cont_load = 0;
if(!CONTRACTED_LOAD.equals(""))
cont_load =Integer.parseInt(CONTRACTED_LOAD);
int app_fee = Integer.parseInt(APPLICATION_FEE);
int dev_chg = Integer.parseInt(DEVELOPMENT_CHARGES);
int sec_dep = Integer.parseInt(SECURITY_DEPOSIT);
int addl_sec_dep = 0;
if(!ADDL_SECURITY_DESPOSIT.equals(""))
addl_sec_dep =Integer.parseInt(ADDL_SECURITY_DESPOSIT);
int dep_thru = Integer.parseInt(DEPOSITED_THRU);
pst.setString(1,reg_no);
pst.setInt(2,serial_no);
pst.setString(3,CIRCLE);
pst.setString(4,DIVISION);
pst.setString(5,SUB_DIVISION);
pst.setString(6,SECTION);
pst.setString(7,CONSUMER_NAME);
pst.setString(8,FATHER_NAME);
pst.setString(9,STREET_NAME);
pst.setString(10,DOOR_NO);
pst.setString(11,TOWN_CITY);
pst.setString(12,LAND_MARK);
pst.setInt(13,pin);
pst.setInt(14,std);
pst.setString(15,PHONE_NO);
pst.setString(16,EMAIL);
pst.setString(17,NEIGHBOUR_SCNO);
pst.setString(18,DOCUMENT_CODE);
pst.setString(19,LT_APR_NO);
pst.setString(20,date1);
pst.setString(21,PCBNO);
pst.setInt(22,status);
pst.setInt(23,social_group);
pst.setInt(24,supply );
pst.setInt(25,location);
pst.setInt(26,purpose);
pst.setInt(27,duration);
pst.setInt(28,laod_type);
pst.setFloat(29,conn_load );
pst.setInt(30,cont_load);
pst.setInt(31,app_fee);
pst.setInt(32,dev_chg);
pst.setInt(33,sec_dep);
pst.setInt(34,addl_sec_dep);
pst.setInt(35,dep_thru );
pst.setString(36,DD_CHEQUE_DETAILS);
pst.setString(37,date2);
pst.setString(38,REMARKS);
pst.setInt(39,1);
pst.setString(40,POLE_NO);
pst.executeUpdate();
result=reg_no;
rs.close();
rs=null;
rs1.close();
rs1=null;
rs2.close();
rs2=null;
rs3.close();
rs3=null;
st.close();
st=null;
pst.close();
pst=null;
catch(Exception e)
e.printStackTrace();
result="false";
return result;
finally
if (rs != null)
try
rs.close();
catch (SQLException e)
rs = null;
if (rs1 != null)
try
rs1.close();
catch (SQLException e)
rs1 = null;
if (rs2 != null)
try
rs2.close();
catch (SQLException e)
rs2 = null;
if (rs3 != null)
try
rs3.close();
catch (SQLException e)
rs3 = null;
if (st != null)
try
st.close();
catch (SQLException e)
st = null;
if (pst != null)
try
pst.close();
catch (SQLException e)
pst = null;
return result;
Also plz help me to improve the code if necessary so that it will work fine for multiple users
thaks & regards
Prasanth.CThanks a lot.
i replaced the code below
if (rs != null)
try
rs.close();
catch (SQLException e)
rs = null;
if (rs1 != null)
try
rs1.close();
catch (SQLException e)
rs1 = null;
if (rs2 != null)
try
rs2.close();
catch (SQLException e)
rs2 = null;
if (rs3 != null)
try
rs3.close();
catch (SQLException e)
rs3 = null;
if (st != null)
try
st.close();
catch (SQLException e)
st = null;
if (pst != null)
try
pst.close();
catch (SQLException e)
pst = null;
instead of blindly closing the resultsets and statements
now it works fine.
One more thing, is my code structurally correct, i mean the variables, try...catch blocks,results,statements,database connections and overall coding. whether it looks like professional code.
thaks & regards,
Prasanth.C -
Help with "Exception in thread "Thread-4" java.lang.NullPointerException"
I am new to Java and I am trying a simple bouncing ball example from Stanford. Here is their simple example that works.
import acm.program.*;
import acm.graphics.*;
import java.awt.*;
public class BouncingBallWorking extends GraphicsProgram {
/** sets diameter */
private static final int DIAM_BALL = 30;
/** amount y velocity is increased each cycle */
private static final double GRAVITY = 3;
/** Animation delay or pause time between ball moves */
private static final int DELAY = 50;
/** Initial X and Y location ball*/
private static final double X_START = DIAM_BALL / 2;
private static final double Y_START = 100;
private static final double X_VEL = 3;
private static final double BOUNCE_REDUCE = 0.9;
private double xVel = X_VEL;
private double yVel = 0.0;
private GOval BallA;
public void run() {
setup(X_START,Y_START);
// Simulation ends when ball goes off right hand
// end of screen
while (BallA.getX() < getWidth()) {
moveBall(BallA);
checkForCollision(BallA);
pause(DELAY);
private void setup(double X_coor, double Y_coor) {
BallA = new GOval(X_coor, Y_coor, DIAM_BALL, DIAM_BALL);
add(BallA);
private void moveBall(GOval BallObject) {
yVel += GRAVITY;
BallObject.move(xVel,yVel);
private void checkForCollision(GOval BallObject) {
if(BallObject.getY() > getHeight() - DIAM_BALL){
yVel = - yVel * BOUNCE_REDUCE;
double diff = BallObject.getY() - (getHeight() - DIAM_BALL);
BallObject.move(0, -2 * diff);
} Now I am trying to modify "setup" so it I can create several balls. I made a simple modification to "setup" and now I am getting an error.
"Exception in thread "Thread-4" java.lang.NullPointerException
at BouncingBallNotWorking.run(BouncingBallNotWorking.java:36)
at acm.program.Program.runHook(Program.java:1592)
at acm.program.Program.startRun(Program.java:1581)
at acm.program.AppletStarter.run(Program.java:1939)
at java.lang.Thread.run(Unknown Source)"
Can you describe why I am getting an error? Thanks.
Here is what I changed.
Before:
private void setup(double X_coor, double Y_coor) {
BallA = new GOval(X_coor, Y_coor, DIAM_BALL, DIAM_BALL);
add(BallA);
}After:
private void setup(double X_coor, double Y_coor, GOval BallObject) {
BallObject = new GOval(X_coor, Y_coor, DIAM_BALL, DIAM_BALL);
add(BallObject);
}Here is the complete code.
* File:BouncingBall.java
* This program graphically simulates a bouncing ball
import acm.program.*;
import acm.graphics.*;
import java.awt.*;
public class BouncingBallNotWorking extends GraphicsProgram {
/** sets diameter */
private static final int DIAM_BALL = 30;
/** amount y velocity is increased each cycle */
private static final double GRAVITY = 3;
/** Animation delay or pause time between ball moves */
private static final int DELAY = 50;
/** Initial X and Y location ball*/
private static final double X_START = DIAM_BALL / 2;
private static final double Y_START = 100;
private static final double X_VEL = 3;
private static final double BOUNCE_REDUCE = 0.9;
private double xVel = X_VEL;
private double yVel = 0.0;
private GOval BallA;
public void run() {
setup(X_START,Y_START, BallA);
// Simulation ends when ball goes off right hand
// end of screen
while (BallA.getX() < getWidth()) {
moveBall(BallA);
checkForCollision(BallA);
pause(DELAY);
private void setup(double X_coor, double Y_coor, GOval BallObject) {
BallObject = new GOval(X_coor, Y_coor, DIAM_BALL, DIAM_BALL);
add(BallObject);
private void moveBall(GOval BallObject) {
yVel += GRAVITY;
BallObject.move(xVel,yVel);
private void checkForCollision(GOval BallObject) {
if(BallObject.getY() > getHeight() - DIAM_BALL){
yVel = - yVel * BOUNCE_REDUCE;
double diff = BallObject.getY() - (getHeight() - DIAM_BALL);
BallObject.move(0, -2 * diff);
} Edited by: TiredRyan on Mar 19, 2010 1:47 AMTiredRyan wrote:
That is great! Thanks. I've got two question though.
1.) Now I want to have 100 bouncing balls. Is the best way to achieve this is through an array of GOvals? I haven't gotten to the lecture on arrays on Stanford's ITunesU site yet so I am not sure what is possible with what I know now.An array would work, or a List. But it doesn't matter much in this case.
2.) Are references being passed by value only applicable to Java or is that common to object-oriented programming? Also is there a way to force Java to pass in "BallA" instead of the value "null"?I can't say about all OO languages as a whole, but at least C++ can pass by reference.
And no, there's no way to pass a reference to the BallA variable, so the method would initialize it and it wouldn't be null anymore.
When you call the method with your BallA variable, the value of the variable is examined and it's passed to the method. So you can't pass the name of a variable where you'd want to store some object you created in the method.
But you don't need to either, so there's no harm done. -
I have classes CDRack, Record and TestProgram.
When I am trying to run TestProgram I have runtime error:
java.lang.NullPointerException
at CDRack.insert(Record,int) (CDRack.java:88) (pc 7)
at Tester63.testAddings (Tester63.java:62) (pc 64)
What's wrong in the class CDRack, method insert?
/** Class CDRack represents collections of compact discs. Discs are
located in the rack in slots numbered from zero upwards. The discs
are represented by Record objects and empty slots by null values. */
public class CDRack extends Object {
/**Creates a new, empty CD rack.
Parameters:
size - the size of the new rack, i.e. the number of slots it has */
public CDRack(int size) {
collection = new Record[size];
this.size = size;
/**Inserts a cd in the given rack slot if the slot in question is empty.
Parameters:
disc - the cd to be added in the rack
slot - the number of a (hopefully empty) slot
Returns:
a boolean value indicating if the insertion was successful. */
public boolean insert(Record disc,
int slot) {
if (collection[slot].equals(null)) {
collection[slot] = record;
return true;
else return false;
}I suspect it is the line that reads
if (collection[slot].equals(null))
If the array entry at collection[slot] is null this will indeed cause a NullPointerException. If you are trying to test for a null entry, which is what it looks like you need to do it like this
if (collection[slot] == null) -
Hello, I hope you can help me out with a Java excercise I am working on. I am using "Learn to Program with Java by John Smiley.
It involves error checking to see if the user clicks cancel without sending a required string or sending an empty string on a JOptionPane
prompt.
If you look at the code you will see what I mean. On my machine
it compiles fine. But when I run it, instead of returning a string with
message "You clicked on CANCEL button" or you sent an empty screen the program bombs
Specifically when click Cancel I get
NullPointerException error.
When I click OK on an empty string the program bombs black screen without any error messages.
Here is the code:
import javax.swing.JOptionPane;
class Excercise6_1
static double adjustment=0;
static double balance =0;
static double newBalance=0;
public static void main(String args[])
String response;
String moreBankingBusiness;
moreBankingBusiness=JOptionPane.showInputDialog
("Do you want to do some banking?");
moreBankingBusiness=moreBankingBusiness.toUpperCase();
while(moreBankingBusiness.equals("YES"))
response=JOptionPane.showInputDialog
("***Select Banking Options***\n\n"+
"1 for deposit" + "\n"+"2 for withdrawal"+
"\n" +"3 for balance query");
response=JOptionPane.showInputDialog
("Enter subject number,(English:1,Maths:2,Science:3");
if(response==null)
JOptionPane.showMessageDialog
(null,"You clicked CANCEL");
System.exit(0);
else if(response.equals(""))
JOptionPane.showMessageDialog
(null,"You sent and empty string");
System.exit(0);
}// end of while
} // end of main
}// end of class
The curious thing is that the program actually worked initially which lead me to think it had to do with SDK getting corrupt.
I have reinstalled JDK and the IDE JCreator several times and still get
the same problem.
Would you be kind enough to provide some insight into the problem.?
I thank you in advance for your support and co-operation.
Regards
SSThe solution is already given but why it doesn't happen when pressed ok is because at that condition it returns an empty string i.e("") whereas if you press cancel it returns a null value.Try replacing the code below and you can understand everything.
try
moreBankingBusiness=JOptionPane.showInputDialog
("Do you want to do some banking?");
if(moreBankingBusiness.equals(""))
System.out.println("empty String");
System.exit(0);
moreBankingBusiness=moreBankingBusiness.toUpperCase();
catch(NullPointerException e)
System.out.println("we caught it");
System.exit(0);
} -
"AWT-EventQueue-0" java.lang.NullPointerException and JInternalFrame
I have two classes one with main method second with GUI methods (JFrame, JInternalFrame). When I call method to start second JInternalFrame from main everything is working but if i call it form any other method i get:
Exception in thread "main" java.lang.NullPointerException
at pkg1.GUI.createFrame(GUI.java:123)
at pkg1.GUI.startFrame2(GUI.java:66)
at pkg1.Top.cos(Top.java:25)
at pkg1.Top.main(Top.java:20) My code:
GUI class
package pkg1;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Frame;
import java.awt.Toolkit;
import java.awt.event.MouseMotionListener;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JInternalFrame;
import javax.swing.JPanel;
import javax.swing.plaf.basic.BasicInternalFrameUI;
import oracle.jdeveloper.layout.XYLayout;
public class GUI
public JDesktopPane desktop;
private XYLayout xYLayout1 = new XYLayout();
public int openFrameCount = 0;
JFrame f = new JFrame();
public void GUII() // Prepare JFrame
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(500, 600);
f.setVisible(true);
public void startFrame()
desktop = new JDesktopPane();
createFrame(); //create first "window"
f.setContentPane(desktop);
desktop.setDragMode(JDesktopPane.OUTLINE_DRAG_MODE);
public void startFrame2()
createFrame(); //create second "window"
f.setContentPane(desktop);
desktop.setDragMode(JDesktopPane.OUTLINE_DRAG_MODE);
public void createFrame()
MyInternalFrame frame = new MyInternalFrame();
frame.setVisible(true); //necessary as of 1.3
desktop.add(frame);
frame.add(new GUI2());
} Top class
public class Top
public static void main(String[] args)
GUI g = new GUI();
g.GUII(); //Create JFrame
g.startFrame(); //Create JInternalFrame
Top t = new Top();
t.sth();
public void sth()
GUI gui = new GUI();
gui.startFrame2();
} MyIntternalFrame class
import javax.swing.JInternalFrame;
import java.awt.event.*;
import java.awt.*;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.SwingConstants;
import oracle.jdeveloper.layout.XYConstraints;
import oracle.jdeveloper.layout.XYLayout;
/* Used by InternalFrameDemo.java. */
public class MyInternalFrame extends JInternalFrame {
static int openFrameCount = 0;
static final int xOffset = 30, yOffset = 30;
private XYLayout xYLayout1 = new XYLayout();
private JButton jButton1 = new JButton();
private JLabel jLabel1 = new JLabel();
private JFrame c = new JFrame();
private JPanel d = new JPanel();
private XYLayout xYLayout2 = new XYLayout();
public MyInternalFrame() {
super("Document #" + (++openFrameCount),true /*resizable*/,true /*closable*/,true /*maximizable*/,true);//iconifiable*/
//...Create the GUI and put it in the window...
//...Then set the window size or call pack...
int width = new GUI2().width + 10;
int height = new GUI2().height + 40;
setSize(width,height);
setLocation(xOffset*openFrameCount, yOffset*openFrameCount);
} Please tel me where is my mistake or maybe you knew another way to open JInternalFrame with public method form another classSome possibly helpful suggestions:
1) Create one JDesktopPane, and do it in the constructor of GUI. You should call this constructor only once.
2) Get rid of GUII. The GUI constructor will do all this and more.
3) Get rid of startFrame and startFrame2.
4) In GUI2, change your width and height to static variables if you are going to use them in outside classes. There is no reason to have to create a GUI2 object just to get those values. Get them from the class, not the instances.
5) You're doing something funky in your Top class with your mixing of static code and non-static code. My gut tells me that Top is just a static universe that exists to get your code up and running, and that the code within it should all be static, but that's just my personal opinion.
6) In MyInternalFrame, get the height and width from GUI2 (if that's what you want to do) again in a static fashion. Rather than new GUI2().width which makes no sense, use GUI2.width.
Why can't you put the button inside of the JInternalFrame object? I believe that the contentPane of this object which may hold your button (unless you embed a jpanel) uses BorderLayout, so you have to take care how you add jcomponents to the jinternalframe (or more precisely, it's contentPane). -
Cry for HELP!! -- ArrayList NullPointerException Error
All,
I keep getting a NullPointerException error when I attempt to add an object to an ArrayList. I have debugged in every possible place. The transfer of data between servlets and classes is good, because I'm printing them out to System.out (for debug purposes)... but adding the instantiated object to the arraylist keeps throwing NullPointer Error. Please review codes to help me determine error. I just can't figure this out! And this is due yesterday. Pls help!!!!
the class Code:
===================================================
import java.util.ArrayList;
import java.lang.Long;
import java.lang.Double;
public class CellieRator
public CellieRator()
(just attributes initializations here. didn't initialize arraylist to null)
ArrayList myfactors;
class FactorsList
long div;
double safeCred;
double ccp;
double incLimit;
double deductibleCredit;
double schedDebCred;
double drugCred;
double ppdiscount;
double waiversubrogation;
double expenseconstant;
double tria;
double dtec;
FactorsList()
public void addMyFactors(long divin, Double safeCredin, Double ccpin, Double incLimitin, Double deductibleCreditin, Double schedDebCredin, Double drugCredin, Double ppdiscountin, Double waiversubrogationin, Double expenseconstantin, Double triain, Double dtecin)
FactorsList fl = new FactorsList();
fl.div = divin;
fl.safeCred = safeCredin != null ? safeCredin.doubleValue() : 0.0;
fl.incLimit = incLimitin != null ? incLimitin.doubleValue() : 0.0;
fl.deductibleCredit = deductibleCreditin != null ? deductibleCreditin.doubleValue() : 0.0;
fl.schedDebCred = schedDebCredin != null ? schedDebCredin.doubleValue() : 0.0;
fl.drugCred = drugCredin != null ? drugCredin.doubleValue() : 0.0;
fl.ppdiscount = ppdiscountin != null ? ppdiscountin.doubleValue() : 0.0;
fl.waiversubrogation = waiversubrogationin != null ? waiversubrogationin.doubleValue() : 0.0;
fl.expenseconstant = expenseconstantin != null ? expenseconstantin.doubleValue() : 0.0;
fl.tria = triain != null ? triain.doubleValue() : 0.0;
fl.dtec = dtecin != null ? dtecin.doubleValue() : 0.0;
fl.ccp = ccpin != null ? ccpin.doubleValue() : 0.0;
if(fl == null)
System.out.println("fl object is null BUDDY!");
else
System.out.println("fl.ppdiscount == "+fl.ppdiscount);
System.out.println("fl.expenseconstant == "+fl.expenseconstant);
System.out.println("fl.ccp == "+fl.ccp);
myfactors.add(fl); <<<<<nullpointerexception here>>>>>>
servlet code:
================================
CellieRator rator = new CellieRator();
long factordiv = bipoldiv.getDivision().getId();
Double expenseconstant = new Double(0.0);
Double safetyCredit = bipoldiv.getSafetyCredit();
if(safetyCredit == null)
throw new Exception("safetyCredit IS NULL.");
Double ccpAp = bipoldiv.getCcpAp();
if(ccpAp == null)
throw new Exception("ccpAp IS NULL.");
Double incLimit = bipoldiv.getLiabilityFactor();
if(incLimit == null)
throw new Exception("incLimit IS NULL.");
Double deductibleCredit = bipoldiv.getDeductFactor();
if(deductibleCredit == null)
throw new Exception("deductibleCredit IS NULL.");
Double schedDebCred = bipoldiv.getScheduledDebitCreditFactor();
if(schedDebCred == null)
throw new Exception("schedDebCred IS NULL.");
Double ppdiscount = bipoldiv.getPromptPaymentDiscount();
if(ppdiscount == null)
throw new Exception("ppdiscount IS NULL.");
Double drugCred = bipoldiv.getDrugFree();
if(drugCred == null)
throw new Exception("drugCred IS NULL.");
Double waiversubrogation = bipoldiv.getWaiverSubro();
if(waiversubrogation == null)
throw new Exception("waiversubrogation IS NULL.");
Double tria = bipoldiv.getLcm();
if(tria == null)
throw new Exception("tria IS NULL.");
Double dtec = bipoldiv.getLcm();
if(dtec == null)
throw new Exception("dtec IS NULL.");
System.out.print(factordiv+" "+safetyCredit+" "+ccpAp+" "+incLimit+" "+deductibleCredit+" "+schedDebCred+" "+drugCred+" "+ppdiscount+" "+waiversubrogation+" "+expenseconstant+" "+tria+" "+dtec);
rator.addMyFactors(factordiv, safetyCredit, ccpAp, incLimit, deductibleCredit, schedDebCred, drugCred, ppdiscount, waiversubrogation, expenseconstant, tria, dtec);<<<<<<<<<and nullpointerexception here>>>>>>>>>>>>>>>>>>>>>dude... fresh eyes always work... thanks... I thought i had already done that... but thanks again for the heads up
Maybe you are looking for
-
How do I delete an old Apple ID and still update apps purchased when I was using it?
How do I delete an old Apple ID and still update apps purchased when I was using it?
-
Suggestion to Moderators: time to split this forum into subjects
I think this forum went through significant activation and change since first initiated after SAPPHIRE 2010. As HANA went from the idea on the slide to real thing with many different aspects I think it is time to split this forum into few focused top
-
Transaction code for excise JV especially to cenvat on hold account
Friends, Can anyone advice that in system for correcting excise register, the jv have to be posted for the following accounts- cenvat on hold RG23 BED RG23 ECS RG23 H CESS cenvat clearing account By which transaction code, jv to be posted. I know tha
-
What can I do when I have downloaded RAW plugin 8.7.1 and it wont work on either PSE 12 or PSE 13????
-
I use Command (⌘)-Shift-4 to grab screenshots of diagrams to make flashcards with on a daily basis. But now my screenshots have stopped going to my clipboard - and they don't paste into my flashcards. Dropbox popped up and asked me if I wanted to use