2017-01-12 5 views
0

упоминается мои коды. Мне нужно запустить это в моем tomcat7.0 без использования IDE. мое приложение не запускается. что я должен изменить, и где я должен хранить свои файлы в tomcat/webapps/.Проблема Struts при исполнении на сервере tomcat

web.xml:

<?xml version="1.0" encoding="ISO-8859-1"?> 
    <web-app xmlns="http://java.sun.com/xml/ns/javaee" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
          http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
     version="3.0" 
     metadata-complete="true"> 

     <filter> 
     <filter-name>struts2</filter-name> 
     <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class> 
     </filter> 

     <filter-mapping> 
     <filter-name>struts2</filter-name> 
     <url-pattern>/*</url-pattern> 
     </filter-mapping> 

     <welcome-file-list> 
     <welcome-file>index.jsp</welcome-file> 
     </welcome-file-list> 

    </web-app> 

struts.xml:

<?xml version="1.0" encoding="UTF-8" ?> 
    <!DOCTYPE struts PUBLIC 
     "-//Apache Software Foundation//DTD Struts 
     Configuration 2.0//EN" 
     "http://struts.apache.org/dtds/struts-2.0.dtd"> 

    <struts> 

     <constant name="struts.devMode" value="true" /> 

     <include file="struts-default.xml"/> 
     <package name="default" extends="struts-default"> 
     <action name=""><result>index.jsp</result></acton> 

     <action name="update" class="demo.Updates"> 
     <result name="success">Success.jsp</result> 
     <result name="error">error.jsp</result> 
     </action> 

     <action name="delete" class="demo.Delete"> 
     <result name="success">Success.jsp</result> 
     <result name="error">error.jsp</result> 
     </action> 

     </package> 

    </struts> 

index.jsp:

<html> 
    <head></head> 
    <body> 
    <script> 
     function submitForUpdate() { 
      document.forms[0].action='/update'; 
      document.forms[0].submit(); 
     } 
     function submitForDelete() { 
      document.forms[0].action='/delete'; 
      document.forms[0].submit(); 
     } 
    </script> 
    <FORM> 
      Please enter<br> 
      1.all details to perform update operation:<br> 
      2.Only bookname to perform delete operation:<br> 
      bookname:<INPUT TYPE="TEXT" NAME="bookname"><BR> 
      authorname:<INPUT TYPE="TEXT" NAME="authorname"><BR> 
      isbn:<INPUT TYPE="TEXT" NAME="isbn"><BR> 
      genre:<INPUT TYPE="TEXT" NAME="genre"><BR> 
      price:<INPUT TYPE="TEXT" NAME="price"><BR> 
      language:<INPUT TYPE="TEXT" NAME="language"><BR> 
      <INPUT TYPE="SUBMIT" value="Update" onklick="submitForUpdate()" > 
      <INPUT TYPE="SUBMIT" value="Delete" onklick="submitForDelete()" > 
     </FORM> 

    </body> 
    </html> 

success.jsp:

<html> 

    <head> 

    <title>Inserted Data List</title> 

    </head> 

    <body> 
    <b>Request proccessed successfully...</b> 
    </body> 

    </html> 

error.jsp:

<html> 

    <head> 

    <title>Inserted Data List</title> 

    </head> 

    <body> 
    <b>Unable to process the request...</b> 
    </body> 

    </html> 

Updates.java:

package demo; 
    import java.sql.DriverManager; 
    import java.sql.PreparedStatement; 
    import java.sql.ResultSet; 

    import com.opensymphony.xwork2.ActionSupport; 
    public class Updates extends ActionSupport{ 

     private String bookname; 
     private String authorname; 
     private String isbn; 
     private String genre; 
     private String price; 
     private String language; 

     public String getbookname() { 
      return bookname; 
     } 
     public void setbookname(String bookname) { 
      this.bookname = bookname; 
     } 
     public String getauthorname() { 
      return authorname; 
     } 
     public void setauthorname(String authorname) { 
      this.authorname = authorname; 
     } 
     public String getisbn() { 
      return isbn; 
     } 
     public void setisbn(String isbn) { 
      this.isbn = isbn; 
     } 
     public String getgenre() { 
      return genre; 
     } 
     public void setgenre(String genre) { 
      this.genre = genre; 
     } 
     public String getprice() { 
      return price; 
     } 
     public void setprice(String price) { 
      this.price = price; 
     } 
     public String getlanguage() { 
      return language; 
     } 
     public void setlanguage(String language) { 
      this.language = language; 
     } 

     public String execute() 
     { 

     try{ 
     Class.forName("com.mysql.jdbc.Driver"); 
     java.sql.Connection con =DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root",""); 

     String s = "update users set bookname=?,authorname=?,isbn=?,genre=?,price=?,language=? where bookname=?"; 
     PreparedStatement ps=con.prepareStatement(s); 
     ps.setString(1, getbookname()); 
     ps.setString(2, getauthorname()); 
     ps.setString(3, getisbn()); 
     ps.setString(4, getgenre()); 
     ps.setString(5, getprice()); 
     ps.setString(6, getlanguage()); 

     ps.executeUpdate(); 
     con.commit(); 

      ps.close(); 
      con.close(); 

       } 
      catch(Exception e){ 
       e.printStackTrace(); 
      } 

       return SUCCESS; 

     } 

    } 

Delete.java:

package demo; 

    import java.sql.DriverManager; 
    import java.sql.PreparedStatement; 
    import javax.servlet.http.HttpServletRequest; 
    import org.apache.struts2.interceptor.ServletRequestAware; 
    import com.opensymphony.xwork2.ActionSupport; 

    public class Delete extends ActionSupport implements ServletRequestAware{  
     private static final long serialVersionUID = 1L; 

     HttpServletRequest request;   

     public String execute() 
     {    

     try{ 
     Class.forName("com.mysql.jdbc.Driver"); 
     java.sql.Connection con    =DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root",""); 
     PreparedStatement ps=null; 

     String k=request.getParameter("bookname"); 

      ps=con.prepareStatement("delete from users where bookname=(?)"); 
      ps.setString(1,k);   
      ps.executeUpdate(); 
      con.commit(); 

      ps.close();   
      con.close(); 

       } 
      catch(Exception e){ 
       e.printStackTrace(); 
      } 

       return SUCCESS; 

     } 

     public void setServletRequest(HttpServletRequest request) { 
      this.request = request; 
     } 

     public HttpServletRequest getServletRequest() { 
      return request; 
     } 

    } 

ответ

0

Вы не должны включать в файл с именем struts-default.xml. Это файл конфигурации, загружаемый по умолчанию.

Удалить эту линию

<include file="struts-default.xml"/> 
Смежные вопросы