Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java HTTP状态404请求的资源不可用_Java_Spring_Jsp_Annotations - Fatal编程技术网

Java HTTP状态404请求的资源不可用

Java HTTP状态404请求的资源不可用,java,spring,jsp,annotations,Java,Spring,Jsp,Annotations,这是我的productdetails.jsp的代码。我已将页眉和页脚作为单独的jsp文件包含在内。当我尝试加载页面时,图像不会显示。该项目是一个maven项目。项目中的其他页面工作正常 Header.jsp <title>Products|Phonaholic</title> <!DOCTYPE html> <html> <head> <title>Phonaholic</title> <me

这是我的productdetails.jsp的代码。我已将页眉和页脚作为单独的jsp文件包含在内。当我尝试加载页面时,图像不会显示。该项目是一个maven项目。项目中的其他页面工作正常

Header.jsp

<title>Products|Phonaholic</title>






<!DOCTYPE html>

<html>
<head>
<title>Phonaholic</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js"></script>
</head>

<body>

<nav class="navbar navbar-default navbar-fixed-top" style="background-color:white;">

  <div class="container-fluid">
    <!-- Brand and toggle get grouped for better mobile display -->
    <div class="navbar-header">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#myNavbar" aria-expanded="false" style="margin-top:20px;">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar" style="color:#1E7145"></span>
        <span class="icon-bar" style="color:#1E7145"></span>
        <span class="icon-bar" style="color:#1E7145"></span>
       </button>
       <a class="navbar-brand" href='/phonaholic/'><img class="img-responsive"     style="max-width:175px;margin-top:-3px;" src="images\Logomakr_2A1smS.png" /></a>
     < /div>


    <!-- Collect the nav links, forms, and other content for toggling -->
    <div class="collapse navbar-collapse" id="myNavbar">
    <ul class="nav navbar-nav">
    <li><a href='/phonaholic/' id="navig">Home</a></li>

       <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" id="navig">Products<span class="caret" style="color: #1E7145"></span></a>
          <ul class="dropdown-menu">
            <li><a href='/phonaholic/basic/'>Basic Phone</a></li>
            <li><a href='/phonaholic/smart/'>Smart Phone</a></li>
            <li><a href='/phonaholic/tab'>Tablets</a></li>            
          </ul>
        </li>

       <li><a href='/phonaholic/about/' id="navig">About</a></li>
    <li><a href='/phonaholic/contact/' id="navig">Contact Us</a></li>
 </ul>


  <ul class="nav navbar-nav navbar-right">
    <li><a href='/phonaholic/register/' id="navig"><i class="fa fa-user" >Register</i></a></li>      
    <li><a href='/phonaholic/login/' id="navig"><i class="fa fa-sign-in" >Login</i></a></li>
  </ul>


</div><!-- /.navbar-collapse -->

 </div><!-- /.container-fluid -->

</nav>

</body>

</html>
单击查看页面源时图像的路径

由于图像位于url中,因此未显示图像

我应该如何更改url以正确显示图像

编辑: 我找到了一个解决方案,我补充说

\img标签中的phonaholic\images\Logomakr_2A1smS.png


但是有谁能告诉我,如果没有在图片url之前添加上面的\phonaholic\before image url,其他页面运行良好,那么该页面会发生什么情况。

我认为这只是src中的路径问题。header.jsp在哪里?我的意思是它是否在productdetails文件夹中?

我认为这只是src中的一个路径问题。header.jsp在哪里?我的意思是它是否在productdetails文件夹中?

您是否尝试在src路径上使用前导斜杠
src=“/images/Logomakr_2A1smS.png”
当我添加“/”时,图像未显示。图像显示的路径不正确。您是否尝试在src路径上使用前导斜杠
src=“/images/Logomakr_2A1smS.png”
当我添加“/”时,图像没有显示。图像显示的路径不正确。jsp页面在模板文件夹中。jsp页面在视图文件夹中。其他jsp页面运行正常。只有此页面导致问题。尝试此
code
src=“/phonaholic/productdetails/images/Logomakr_2A1smS.png"
code
只是为了确保这不是它正在工作的问题..但我想知道为什么它只发生在该页面上…我认为发生的事情是因为当您显示jsp页面时,您实际上在目录中,这就是为什么它在当前目录中搜索images\Logomakr\u 2A1smS.png哪个是productdetails位于templates文件夹中jsp页面位于views文件夹中。其他jsp页面运行正常。只有此页面导致问题。请尝试此
code
src=“/phonaholic/productdetails/images/Logomakr\u 2A1smS.png”
code
只是为了确保这不是它正在工作的问题..但我想知道为什么它只发生在该页面上…我认为发生的事情是因为当您显示jsp页面时,您实际上在目录中,这就是为什么它在当前目录中搜索images\Logomakr\u 2A1smS.png这就是产品细节
var prod=       {"id":41,"name":"gjavsd","brand":"hasbsh","category":"bsha","desc":"ahbas","price":100.0};
angular.module("productApp",[])

.controller("productController",function($scope){

    $scope.prodData=prod;

    $scope.sort=function(keyname){
    $scope.sortKey=keyname;
    $scope.reverse=!$scope.reverse;
    }

});
</script>

   <div class="container-fluid" ng-app="productApp" ng-    controller="productController"><br><br><br><br><br>
<input type="text" ng-model="search">
<table class="table table-hover">
  <thead>
    <tr><th></th><th ng-click="sort('id')">Product ID</th><th ng-click="sort('name')">Product Name</th><th ng-click="sort('brand')">band</th><th ng-click="sort('category')">Category</th><th ng-click="sort('price')">Price</th>    </tr>
  </thead>

  <tbody>
     <tr ng-repeat="product in prodData | filter:search | orderBy:sortKey:reverse"><td><img src="images\{{product.id}}.jpg" style="max-width: 175px;max-height: 100px; "/></td><td>{{product.id}}</td><td>{{product.name}}</td><td>{{product.brand}}</td><td>{{product.category}}</td><td>{{product.price}}</td><td><button type="submit" class="button" onclick="productdetails/{{product.id}}">View</button></td></tr>
  </tbody>
</table>




</div>
@RequestMapping("/productdetails/{id}")
public ModelAndView ProductDetails(@PathVariable("id") int id)
{
    Product products=productDAO.getProductById(id);
    String productList=new Gson().toJson(products);
    ModelAndView model=new ModelAndView("product");
    model.addObject("productList",productList);
    return model;

}