I Have one class parse3333 which contains some methods.iam accessiong some methods from the same class.it is working.now in another class TestPanel2 i have to access those methods.in TestPanel2 i have created tyhe object othat classas parse3333 p= new parse3333();
when iam accessiong the methods in TestPanel2.java it is giving unknownsource exception
iam sending my two classes.please tell me where is the problem.iam unable to trace the exact problem
parse3333.java
package com.blogic.back;
import javax.xml.parsers.*;
import org.w3c.dom.*;
import javax.xml.transform.*;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.Transformer ;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import java.io.*;
public class parse3333
{
private
String documentNameToParse;
public void setDocumentNameToParse(String documentNameToParse)
{
this.documentNameToParse = documentNameToParse;
}
private DocumentBuilderFactory factory;
private DocumentBuilder builder;
private static Document document;
public void setDocument(Document document){
this.document = document;
}
public Document getDocument(){
return document;
}
Element rootNode = null;
/* This function adds the element at the end of the parent*/
public Element addElement(Element parenElement,Element chileElement){
return null;
}
NodeList l = null;
Node refffNode = null;
Node reffNode = null;
Node refNode = null;
//Element tempele4 = null;
static Element tempele = null;
static Element tempele2 = null;
static Element tempele3 = null;
static Element tempele44 = null;
static Element tempelee2 = null;
static Element tempelee3 = null;
static Element tempele4 = null;
static Element tempele5 = null;
static Element tempele6 = null;
static Element tempeleee2=null;
static Element tempeleee44=null;
static Element tempeleee=null;
static Element tempeler1=null;
static Element tempeler2=null;
static Element tempelerr=null;
static Element tempelerr1=null;
static Element tempelerr2=null;
/* static String[][] a = {
{"Flintstones", "Fred", "Wilma","Pebbles", "Dino"},
{"Rubbles", "Barney", "Betty","Bam Bam"},
{"Jetsons", "George", "Jane","Elroy", "Judy", "Rosie", "Astro"},
{"Scooby Doo Gang", "Scooby Doo","Shaggy", "Velma", "Fred", "Daphne"}
};*/
public void createInitParams(Element servletElement ,String[][] a) throws Exception {
try{
int paramLength = a.length;
for (int i=0;i<paramLength; i++){
Element initParam = document.createElement("init-param");
Element paramName = document.createElement("param-name");
Element paramValue = document.createElement("param-value");
Text spaceElement1 = document.createTextNode("\n");
Text spaceElement2 = document.createTextNode("\n");
Text spaceElement3 = document.createTextNode("\n");
Text spaceElement4 = document.createTextNode("\n");
Text paramNameVal = document.createTextNode(a[i][0]);
Text paramValVal = document.createTextNode(a[i][1]);
paramValue.appendChild(paramValVal);
paramName.appendChild(paramNameVal);
initParam.appendChild(spaceElement3);
initParam.appendChild(paramName);
initParam.appendChild(spaceElement2);
initParam.appendChild(paramValue);
initParam.appendChild(spaceElement1);
servletElement.appendChild(initParam);
servletElement.appendChild(spaceElement4);
}
}catch(Exception e){
System.out.println("error is here");
throw e;
}
}
public void addServlet(Element servletElement,String a,String b,String c) throws Exception
{
String name1="subservlet";
String name2="subservletclass";
String name3="jspfile";
Element servletname = document.createElement("servlet-name");
Element servletclass = document.createElement("servlet-class");
Element jspfile=document.createElement("jsp-file");
//Element jspfile = document.createElement("jsp-file");
Text spaceElement1 = document.createTextNode("\n");
Text spaceElement2 = document.createTextNode("\n");
Text spaceElement3 = document.createTextNode("\n");
Text spaceElement4 = document.createTextNode("\n");
Text spaceElement5= document.createTextNode("\n");
Text spaceElement6= document.createTextNode("\n");
name1=a;
name2=b;
name3=c;
Text servletnameVal = document.createTextNode(name1);
Text servletclassVal = document.createTextNode(name2);
Text jspfileval=document.createTextNode(name3);
servletname.appendChild(servletnameVal);
servletclass.appendChild(servletclassVal);
jspfile.appendChild(jspfileval);
servletElement.appendChild(servletname);
servletElement.appendChild(spaceElement4);
servletElement.appendChild(servletclass);
servletElement.appendChild(spaceElement5);
servletElement.appendChild(jspfile);
servletElement.appendChild(spaceElement6);
}
public void addServletMapping(Element servletElement ,String a,String b,String c)
{
Element servletmapping = document.createElement("servlet-mapping");
Element servletname = document.createElement("servlet-name");
Element urlpattern = document.createElement("url-pattern");
Text spaceElement1 = document.createTextNode("\n");
Text spaceElement2 = document.createTextNode("\n");
Text spaceElement3 = document.createTextNode("\n");
Text spaceElement4 = document.createTextNode("\n");
Text servletNameVal = document.createTextNode(a);
Text urlpatternVal = document.createTextNode(b);
servletname.appendChild(servletNameVal);
urlpattern.appendChild(urlpatternVal);
servletmapping.appendChild(spaceElement3);
servletmapping.appendChild(servletname);
servletmapping.appendChild(spaceElement2);
servletmapping.appendChild(urlpattern);
servletmapping.appendChild(spaceElement1);
servletElement.appendChild(servletmapping);
servletElement.appendChild(spaceElement4);
}
public void initDocument(){
try{
factory = DocumentBuilderFactory.newInstance();
builder = factory.newDocumentBuilder();
document = builder.parse(documentNameToParse);
}catch(Exception e){
e.printStackTrace();
}
}
public parse3333(String fileName){
setDocumentNameToParse(fileName);
initDocument();
}
public void writeToFile(Document document,String toFile) throws Exception {
try{
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();
DOMSource source = new DOMSource( document.getDocumentElement());
FileWriter fos = new FileWriter(toFile);
StreamResult result = new StreamResult(fos);
transformer.transform(source, result);
}catch(Exception e){
System.out.println("writeToFile : The document couldnt be written to file ");
throw e;
}
}
public Element getRootNode(){
return document.getDocumentElement();
}
public void createServletElement(String[][] initParamValPair){
try{
NodeList l = getRootNode().getChildNodes();
Node servletNode = l.item(1);
String a= "servletname";
String b="servletclass";
String c="jsppfile";
String aa="subbu";
String bb="sun";
String cc="nnn";
addServlet((Element)servletNode,a,b,c);
createInitParams((Element)servletNode,initParamValPair);
addServletMapping((Element)servletNode,aa,bb,cc);
}catch(Exception e){
System.out.println("Error is here 2");
e.printStackTrace();
}
}
public static void main(String args[]) throws Exception {
try{
System.out.println("calling functions");
parse3333 p = new parse3333("d://puvvada//initparams//web.xml");
p.initDocument();
String arr[][]={{"servlet1","com.sys.servlet1"},
{"servlet2","com.sys.servlet2"},
{"servlet3","com.sys.servlet3"}
};
p.createServletElement(arr);
p.writeToFile(p.getDocument(),"d://puvvada//initparams//web.xml");
}catch(Exception e){
System.out.println("Error");
e.printStackTrace();
}
}
}
TestPanel2.java
package com.nexes.test;
import java.awt.*;
import java.net.*;
import javax.swing.*;
import javax.swing.border.*;
import java.io.*;
import java.awt.event.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;
import javax.xml.transform.*;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import java.io.File;
import com.blogic.back.*;
import java.util.*;
public class TestPanel2 extends JPanel implements ActionListener{
private JLabel jLabel1;
public JLabel paramname;
public JTextField t1;
public String s1;
public JLabel paramvalue;
public JTextField t2;
public String s2;
Document document;
public JButton create;
private JPanel contentPanel;
private ImageIcon icon;
parse3333 p= null;
copying c= null;
public TestPanel2() {
p= new parse3333("d:/puvvada/initparams/WEB-INF/web.xml");
c= new copying();
contentPanel = getContentPanel();
// contentPanel.setBorder(new EmptyBorder(new Insets(10, 10, 10, 10)));
icon = getImageIcon();
setLayout(new java.awt.BorderLayout());
JPanel secondaryPanel = new JPanel();
secondaryPanel.add(contentPanel, BorderLayout.NORTH);
add(secondaryPanel, BorderLayout.CENTER);
}
public JPanel getContentPanel() {
JPanel contentPanel1 = new JPanel();
JPanel jPanel1 = new JPanel();
jLabel1 = new JLabel();
paramname= new JLabel();
t1= new JTextField(10);
paramvalue= new JLabel();
t2= new JTextField(10);
create = new JButton();
contentPanel1.setLayout(new java.awt.BorderLayout());
jPanel1.setLayout(new java.awt.GridLayout(0, 1));
paramvalue.setText("Enter the initparamname");
jPanel1.add(paramname);
jPanel1.add(t1);
paramvalue.setText("Enter the initparamvaluee");
jPanel1.add(paramvalue);
jPanel1.add(t2);
jLabel1.setText("for deploying the web application click deploy button");
jPanel1.add(jLabel1);
create.addActionListener(this);
create.setText("deploy");
jPanel1.add(create);
contentPanel1.add(jPanel1, java.awt.BorderLayout.CENTER);
return contentPanel1;
}
public void setDocument(Document document){
this.document = document;
}
public Document getDocument(){
return document;
}
public void actionPerformed(ActionEvent ae)
{
try
{
if(ae.getSource()==create)
{
s1= t1.getText();
s2= t2.getText();
System.out.println(s1);
System.out.println(s2);
System.out.println("calling functions");
parse3333 p = new parse3333("d://puvvada//initparams//web.xml");
p.initDocument();
String arr[][]={{"servlet1","com.sys.servlet1"},
{"servlet2","com.sys.servlet2"},
{"servlet3","com.sys.servlet3"}
};
p.createServletElement(arr);
p.writeToFile(p.getDocument(),"d://puvvada//initparams//web.xml");
NodeList l =p.getRootNode().getChildNodes();
Node servletNode = l.item(1);
String a="hello";
String b="asdf";
String c="wizard";
p.addServlet((Element)servletNode,a,b,c);
p.createInitParams((Element)servletNode,arr);
// p.addServletMapping(p.tempelee2,p. tempelee3);
// p.addFilter(p.tempeler1,p.tempeler2);
// p.addFilterMapping(p.tempelerr1,p.tempelerr2);
p.writeToFile(p.getDocument(),"d://puvvada//initparams//web.xml");
// c.copyDirectory(new File("d:/puvvada/initparams"),new File("d:/puvvada/wapp/wizard/applications/initparams"));
System.out.println("deployment started");
}
}catch(Exception e)
{
System.out.println(e.getMessage());
}
}
private ImageIcon getImageIcon() {
return new ImageIcon((URL)getResource("clouds.jpg"));
}
private Object getResource(String key) {
URL url = null;
String name = key;
if (name != null) {
try {
Class c = Class.forName("com.nexes.test.Main");
url = c.getResource(name);
} catch (ClassNotFoundException cnfe) {
System.err.println("Unable to find Main class");
}
return url;
} else
return null;
}
}
iam seding my exact stack trace also
domain
after executing the batch file
hello
123
calling functions
Error is here 2
java.lang.NullPointerException
at com.blogic.back.parse3333.addServlet(Unknown Source)
at com.blogic.back.parse3333.createServletElement(Unknown Source)
at com.nexes.test.TestPanel2.actionPerformed(Unknown Source)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:
86)
at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(Abst
ctButton.java:1839)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonMod
.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:2
)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButto
istener.java:245)
at java.awt.Component.processMouseEvent(Component.java:5100)
at java.awt.Component.processEvent(Component.java:4897)
at java.awt.Container.processEvent(Container.java:1569)
at java.awt.Component.dispatchEventImpl(Component.java:3615)
at java.awt.Container.dispatchEventImpl(Container.java:1627)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:34
)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:319
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
at java.awt.Container.dispatchEventImpl(Container.java:1613)
at java.awt.Window.dispatchEventImpl(Window.java:1606)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatch
read.java:201)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchTh
ad.java:151)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchTh
ad.java:141)
at java.awt.Dialog$1.run(Dialog.java:540)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatch
read.java:201)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchTh
ad.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:14
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:13
at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
null
Dialog return code is (0=Finish,1=Cancel,2=Error): 0
please reply to this as iam unable to trace this exactly.