package mypackage; import org.netbeans.api.web.dd.DDProvider; import org.netbeans.api.web.dd.WebApp; import org.netbeans.api.web.dd.Listener; import org.openide.filesystems.*; public class ListenerExample { /** * @param args the command line arguments */ public static void main(String[] args)throws Exception { // get the file object of web.xml file DDProvider ddProvider = DDProvider.getDefault(); FileObject fo = Repository.getDefault().findResource("WEB-INF/web.xml"); // get the deployment descriptor root object WebApp webApp = ddProvider.getDDRoot(fo); // print the version of deployment dscriptor System.out.println("DD version = "+webApp.getVersion()); // get the array of listeners and print the listener classes Listener [] listeners = webApp.getListener(); for (int i=0; i<listeners.length; i++) { System.out.println("Listener ["+i+"] = "+listeners[i].getListenerClass()); } } }
package mypackage;
import org.netbeans.api.web.dd.DDProvider;
import org.netbeans.api.web.dd.WebApp;
import org.netbeans.api.web.dd.Servlet;
import org.netbeans.api.web.dd.InitParam;
import org.openide.filesystems.*;
public class InitParamExample {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws Exception {
// get the file object of web.xml file
DDProvider ddProvider = DDProvider.getDefault();
FileObject fo = Repository.getDefault().findResource("WEB-INF/web.xml");
// get the deployment descriptor root object
WebApp webApp = ddProvider.getDDRoot(fo);
// print the version of deployment dscriptor
System.out.println("DD version = "+webApp.getVersion());
// looks for the "CarServlet" servlet at WebApp object by ServletName property
Servlet servlet = (Servlet) webApp.findBeanByName("Servlet", "ServletName", "CarServlet");
if (servlet!=null) {
// add the first InitParam object to Servlet object
servlet.addBean("InitParam", new String[]{"ParamName","ParamValue"}, new String[]{"car_type","FORD"}, null );
// add the second InitParam object to Servlet object
servlet.addBean("InitParam", new String[]{"ParamName","ParamValue"}, new String[]{"car_color","green"}, null );
// print all init params to console
InitParam [] newParams = servlet.getInitParam();
for (int i=0;i<newParams.length;i++)
System.out.println("init-param ["+i+"] = "+newParams[i].getParamName()+" -> "+newParams[i].getParamValue());
// write changes back to file object
webApp.write(fo);
}
}
}