我正在为Spring Boot应用程序进行异常处理。我已经创建了我自己的异常类witch,一切都很好,我在控制台中得到了异常,但我无法到达我的@ExceptionHandler方法。
引发异常的类:
@Override
public AuctionBody insertNewAuction(AuctionBody auctionBody, int ownerId, String AUCTION_TYPE) {
try {
SimpleJdbcInsert simpleJdbcInsert = new SimpleJdbcInsert(dataSource).withTableName("auctions")
.usingGeneratedKeyColumns("id");
Map<String, Object> parameters = new HashMap<String, Object>();
parameters.put("title", auctionBody.getTitle());
parameters.put("type", auctionBody.getType());
parameters.put("start_time", Timestamp.valueOf(auctionBody.getStartDate()));
parameters.put("end_time", Timestamp.valueOf(auctionBody.getEndDate()));
parameters.put("quantity", auctionBody.getItemQuantity());
parameters.put("starting_price", auctionBody.getStartingPrice());
parameters.put("currency", auctionBody.getCurrency());
parameters.put("status", auctionBody.getStatus());
parameters.put("description", null);
parameters.put("allow_bid_for_quantity", auctionBody.isAllowToBidForQuantity());
parameters.put("buy_out_price", auctionBody.getBuyOutPrice());
parameters.put("owner_id", ownerId);
parameters.put("buy_out_price", auctionBody.getBuyOutPrice());
parameters.put("quantity_left", auctionBody.getItemQuantity());
parameters.put("uuid", auctionBody.getAuctionIdUrlOwner());
parameters.put("allow_buy_out", auctionBody.isAllowBuyOut());
parameters.put("link", auctionBody.getLink());
auctionBody.setId((Integer) simpleJdbcInsert.executeAndReturnKey(parameters));
insertNewAuctionPictures(auctionBody, auctionBody.getId());
if (AUCTION_TYPE.equals("FullAuction")) {
insertPeopleToInvite(auctionBody);
}
return auctionBody;
}catch (DataAccessException e){
throw new JdbcExceptions("Cant add auction");
}
}
public class JdbcExceptions extends RuntimeException {
public JdbcExceptions(String message) {
super(message);
}
@ControllerAdvice
public class ExceptionHandlingController {
@ExceptionHandler(JdbcExceptions.class)
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
public String getJdbcException(JdbcExceptions ex){
return "redirect:/html/errorPage";
}
}
package com.visma.seli;
import com.visma.seli.config.properties.repository.DatabaseProperties;
import com.visma.seli.config.properties.repository.RepositoryProperties;
import org.springframework.boot.Banner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.boot.web.support.SpringBootServletInitializer;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.web.servlet.DispatcherServlet;
@SpringBootApplication
@EnableConfigurationProperties({RepositoryProperties.class, DatabaseProperties.class})
@EnableScheduling
@ComponentScan()
@EnableAutoConfiguration
public class SeliApplication extends SpringBootServletInitializer {
public static void main(String[] args) {
ApplicationContext ctx = SpringApplication.run(SeliApplication.class, args);
DispatcherServlet dispatcherServlet = (DispatcherServlet)ctx.getBean("dispatcherServlet");
dispatcherServlet.setThrowExceptionIfNoHandlerFound(true);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.bannerMode(Banner.Mode.OFF).sources(SeliApplication.class);
}
@Override
protected SpringApplicationBuilder createSpringApplicationBuilder() {
return new SpringApplicationBuilder().bannerMode(Banner.Mode.OFF);
}
}
我的应用程序中没有其他异常处理程序,在抛出后,我得到了我设置的消息cant add auction
您可以尝试将@enableWebMVC添加到配置文件中
@Configuration
@EnableWebMvc
@ComponentScan(...)
public class MyAppConfiguration {
}
我在尝试执行此代码时遇到以下错误。 java.lang.IllegalArgumentException:在“com.app.aggregatorappaconfiguration”上找不到ConfigurationProperties注释。在org.springframework.util.assert.NotNull(assert.java:115)~[spring-core-4.3.2.re
我使用springboot和maryadb数据库进行训练。当我测试数据恢复时,我在邮递员中收到这样一条消息: 。我在复制粘贴中尝试了几个教程,我总是有相同的消息。我也会把控制台中的消息。提前谢谢你的帮助。 控制器 服务 回应的 模型 应用属性 安慰
首先要说的是,我一直在寻找解决方案,现在我非常绝望。 当由Spring Boot运行时,我无法从html页面访问css文件。 html。文件 应用JAVA 文件夹结构: 我尝试过将文件夹放入文件夹和/或删除addResourcesHandler,通过相对路径引用css和其他一些东西。似乎没有什么能解决这个问题。请告诉我,如果你试图解决这个问题,但没有找到解决方案,这样我就知道,我不会被忽视。
我创建了一个Ajax post请求,由于某种原因,PHP脚本没有正确接收post数据。我得到一个500内部服务器错误,后面是“XHR加载失败:POST”。 以下是我的javascript的一部分: 以下是PHP: 详细查看了我的代码后,我认为我在ajax请求中做了一些不正确的事情。在我的PHP文件中,如果我创建一个javascript警报来输出$\u POST变量,则不会打印任何内容。
我试图使一个API工作在springstart但是当我输入请求:http://localhost:8080/employee/all我得到这个结果: 它是一个经典的服务,包含一个模型、一个服务、一个存储库、一个映射器和一个异常(如果没有员工),使用的数据库是sql中的实体,如下所示 服务: 仓库 模型 制图员 例外 波姆。xml
我不知道确切的原因,但是我的tableview的滚动条永远不会结束。 这是桌面视图的中间,一切看起来都很好 但当我走到尽头 滚动条没有到达终点... 我想我的约束是可以的(我使用的是autolayout),因为除了滚动条,tableview显示得很好。 我的视图控制器是一个,只包含一个。下面是一个屏幕截图,总结如下: 代码未添加任何约束。你知道我怎么调试这个吗? 提前谢谢 编辑:我试图删除和重新创