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); } } }