2017-08-15 150 views
0

Im得到以下錯誤: String類型的方法valueOf(Object)不適用於參數(void)<%= loadProductListView( 「男人」, 「襯衫」)%>String類型的方法valueOf(Object)不適用於參數

在javascript中調用林方法loadProductListView:

    <script> 
        $(document).ready(function() { 
        $("#idMenShirts").click(function() { 
        $("#idListView").html(''); 
       <%=loadProductListView("men","shirt") %> 
        }); 
       </script> 

在這裏,我已經宣佈loadProductListView

     <%! 
        public static void loadProductListView(String cat,String 
                     type) 
         {  
          %> 
        <sql:setDataSource var = "snapshot" driver = 
        "oracle.jdbc.driver.OracleDriver" 
        url = "jdbc:oracle:thin:@localhost:1521:XE" 
        user = "system" password = "1234" /> 
       System.out.println("connected for products"); 
       <c:set var = "cat" value = "$(cat)"/> 
        <c:set var = "type" value = "$(type)"/> 
         <sql:query dataSource = "${snapshot}" var = "result"> 
         SELECT product_name,product_desc,image_desc FROM 
         products WHERE product_category= ? and product_type= 
                     ?; 

     <sql:param value="${cat}" /> 
     <sql:param value="${type}" /> 
     </sql:query> 
     <script> 
     <c:forEach var = "row" items = "${result.rows}"> 

      var img= <c:out value = "${row.image_desc}"/> +".jpg"; 
      var name=<c:out value = "${row.product_name}"/>; 
      var desc=<c:out value = "${row.product_desc}"/>; 
      var pro_desc=<c:out value = "${row.image_desc}"/>+".jsp"; 





$("#one ul").append('<li class="ui-li-has-thumb"><a href="'+pro_desc+'" class="ui-btn ui-btn-icon-right ui-icon-carat-r">' + 
        '<img src="img/' + img + '" style="height: 80px;width: 80px;"/>' + 
        '<h2>' + name + '</h2>' + 
        '<p>' + desc + '</p>' + 
        '</a>' + 
        '</li >'); 


    $('#one ul').listview('refresh'); 

回答

0

您正在嘗試打印方法loadProductListView()返回的結果。但是這個方法返回void。所以這沒有意義。

我不知道你真正想實現的,因爲你的代碼是沒有鋸齒和混雜HTML的意大利麪條,JavaScript中,JSPL標籤和腳本,所以我只能說的是,你這樣做是錯誤的

  • 不使用scriptlets
  • 不使用sql標記。他們被正式記錄爲一個快速和骯髒的破解
  • 把你的邏輯(數據庫訪問,參數處理等)寫入控制器寫成Java類,從一個servlet調用,並使用JSP,與JSTL,自定義標籤,但沒有單個scriptlet,專門用於從存儲在控制器請求中的bean中生成HTML。

有很多框架幫助以正確的方式構建您的應用程序(以及更多)。選擇其中一個並使用它。

相關問題