spring boot + apache camel + jpa
问题描述:
我使用spring boot + apache camel + jpa创建了一个新项目。spring boot + apache camel + jpa
这应该是非常简单的,但有些配置错误,我找不到它是什么。
Apache的骆驼路线似乎正在工作,但数据库连接似乎没有。
主要应用:
@SpringBootApplication
@EnableAutoConfiguration
public class PolicyUpdateWebServiceApplication {
protected static final Logger LOG = Logger.getLogger(PolicyUpdateWebServiceApplication.class);
public static void main(String[] args) {
new SpringApplication(PolicyUpdateWebServiceApplication.class).run(args);
}
@Bean
public ServletRegistrationBean dispatcherServlet() {
return new ServletRegistrationBean(new CXFServlet(), "/webservices/*");
}
@Bean(name= Bus.DEFAULT_BUS_ID)
public SpringBus springBus() {
return new SpringBus();
}
}
实体:
@Entity
@XmlRootElement(
name = "TransactionInfo"
)
@XmlCDATA({"bookingXML"})
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(
name = "TransactionInfo",
propOrder = {"transactionId", "CCVB", "quoteNumber", "policyNumber", "bookingXML", "creationDate", "lastModified", "status", "statusDescription"}
)
public class TransactionInfo implements Serializable {
private static final long serialVersionUID = -2368497973443507661L;
@Id
private String transactionId;
@Embedded
@Column(nullable = false)
private CCVB CCVB;
@Column(nullable = false, length = 50)
private String quoteNumber;
@Column(nullable = false, length = 50)
private String policyNumber;
@Column(nullable = false)
private String bookingXML;
@XmlJavaTypeAdapter(XMLDateAdapter.class)
@Column(nullable = false, updatable = false)
private Date creationDate;
@XmlJavaTypeAdapter(XMLDateAdapter.class)
@Column(nullable = false)
private Date lastModified;
@Column(length = 4, nullable = false)
private IntegrationStatus status;
@Column(length = 100)
private String statusDescription;
库:
@Repository
public interface TransactionInfoRepository extends CrudRepository<TransactionInfo, String> {
TransactionInfo findByTransactionId(String name);
TransactionInfo save(TransactionInfo TransactionInfo);
}
服务:
public interface TransactionInfoService {
void saveTransactionInfo(TransactionInfo transactionInfo);
}
服务实现:
@Component("transactionInfoService")
@Transactional
public class TransactionInfoServiceImpl implements TransactionInfoService {
@Autowired
TransactionInfoRepository transactionInfoRepository;
public void saveTransactionInfo(TransactionInfo transactionInfo) {
transactionInfoRepository.save(transactionInfo);
}
}
在apache的路线......我的代码:
public class PolicyPublishProcessor implements Processor {
@Autowired
TransactionInfoService transactionInfoService;
TransactionInfo transactionInfo = new TransactionInfo();
// save a couple of customers
transactionInfoService.saveTransactionInfo(transactionInfo);
然而,当我打开调试...我可以看到transactionInfoService变量,这是应该被注射......将变为空。
任何人都知道会发生什么?
感谢,
答
让你的骆驼处理器通过@Component
注解一个Spring bean。