春の起動アプリケーションでリダイレクト機能を使用する際に問題があります。下の私のコードで示されているように、 "redirect:/ aucConfirm /"を返すが、私はこれを開始すると "このアプリケーションには明示的なマッピングがない"というエラーが出る。春の起動時にリダイレクトを使用する
@Controller
@RequestMapping("/")
public class WelcomeController {
@Autowired
AuctionItemRepository aucRepository;
// inject via application.properties
@Value("${welcome.message:test}")
private String message = "Hello World";
@RequestMapping(value = "/")
public String welcome(Map<String, Object> model) {
model.put("message", this.message);
return "welcome";
}
@RequestMapping(value = "/sell", method = RequestMethod.GET)
public String addAuction(Model model, HttpServletRequest request) {
model.addAttribute("newAuction", new AuctionItem());
return "NewAuction";
}
@RequestMapping(value = "/sell", method = RequestMethod.POST)
public String saveAuction(@ModelAttribute AuctionItem newAuction, RedirectAttributes attributes){
return "redirect:/aucConfirm";
}
@RequestMapping(value = "/aucConfirm", method = RequestMethod.GET)
public String confirmNewAuction(Model model, HttpServletRequest request) {
return "aucConfirm";
}
}
これが私の現在のコンフィギュレーションクラスです -
@SpringBootApplication
@ComponentScan
@EnableJpaRepositories("All")
@EntityScan("All")
public class AuctionWebApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(AuctionWebApplication.class);
}
public static void main(String[] args) throws Exception {
SpringApplication.run(AuctionWebApplication.class, args);
}
@Bean
DataSource dataSource() {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/auctiondb?zeroDateTimeBehavior=convertToNull");
dataSource.setUsername("root");
dataSource.setPassword("toor");
return dataSource;
}
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory(DataSource dataSource) {
LocalContainerEntityManagerFactoryBean entityManager = new LocalContainerEntityManagerFactoryBean();
entityManager.setDataSource(dataSource);
entityManager.setJpaVendorAdapter(new HibernateJpaVendorAdapter());
entityManager.setPackagesToScan("All");
Properties jpaProperties = new Properties();
jpaProperties.setProperty("hibernate.dialect", "org.hibernate.dialect.MySQLDialect");
jpaProperties.setProperty("hibernate.hbm2ddl.auto", "update");
jpaProperties.setProperty("hibernate.id.new_generator_mappings", "false");
entityManager.setJpaProperties(jpaProperties);
return entityManager;
}
}それはおそらく確立しようとイム私のJSPページとは何かを持ってもらえ
更新やり直す?
<button type="submit" name="submit" class="btn btn-success" form="addNewAuc">Next</button>
このコードに何か問題があります - :
<mvc:form class="form-inline" action="${action}" method="post" modelAttribute="newAuction" id="addNewAuc">
、ユーザーが次のボタンを押したとき、それは「/ aucConfirmをリダイレクトする」ヒットすべき - 私はここで、MVCのフォームがありますか?この時点でアイデアが不足しています。私はそれを動作させるために私の春のブート設定クラスに何かを追加する必要がありますか? - 助けてください!
アップデート2
http://localhost:8080/AuctionWebsite/sell
私は詳細はこのフォームをint型と私はそれが http://localhost:8080/AuctionWebsite/aucConfirm
ツーリダイレクトする次を選択入力すると、しかし、これは
をappears-ものですすべてでリダイレクトおよびリンクhttp://localhost:8080/AuctionWebsite/sell
http://localhost:8080/AuctionWebsite/aucConfirm作品に残りません手動で
イムは、この時点で少し必死入ったとき、本当にすべてのヘルプをいただければ幸いです。
try "redirect:aucConfirm"; 。リダイレクト先のURLを確認できますか? – yogidilip
@yogidilipこれは私の問題を解決しませんでした。詳細は更新情報を参照してください – HazardAGuess