私は春に少し慣れていないので、Null Pointer Exception に遭遇しました。私@Autowired
のMongoRepositoryでは機能していないと思います。いくつかの例を試してみると、何らかの理由で機能していました。(run関数のコメントアウトされたコードは機能しました)
これは私が得るエラーです:
2016-05-20 02:31:20.877 ERROR 6272 --- [nio-8080-exec-2] oaccC[.[.[/].[dispatcherServlet] : サーブレット [dispatcherServlet] の Servlet.service() とのコンテキストでパス [] が例外をスローしました [リクエストの処理に失敗しました。ネストされた例外は根本原因を持つ java.lang.NullPointerException] です
java.lang.NullPointerException: null at com.applesauce.service.CustomerService.addCustomer(CustomerService.java:24) ~[classes/:na]
見て、私に指示してもらえますか?また、ベスト プラクティスに関して何か間違ったことをしている場合はお知らせください。さらに情報が必要な場合は、お問い合わせください。
com.applesauce.controller
@RestController
@RequestMapping("/customer")
public class CustomerController {
private CustomerService customerService = new CustomerService();
@RequestMapping(value = "/addcustomer", method = RequestMethod.GET)
public Customer addCustomer(@RequestParam("firstName") String fName,
@RequestParam("lastName") String lName,
@RequestParam("email") String email,
@RequestParam("phoneNumber") String phoneNumber,
@RequestParam("source") String source){
return customerService.addCustomer(new Customer(fName,lName,email,phoneNumber,source));
}
}
com.applesauce.repository
@Repository
public interface CustomerRepository extends MongoRepository<Customer, String> {
public Customer findByFirstName(String firstName);
public List<Customer> findByLastName(String lastName);
}
com.applesauce.service
@EnableMongoRepositories(basePackages = "com.applesauce.repository")
public class CustomerService {
@Autowired
private CustomerRepository repository;
public Customer addCustomer(Customer customer){
repository.save(customer);
return customer;
}
}