2017-08-09 139 views
0

我使用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變量,這是應該被注射......將變爲空。

任何人都知道會發生什麼?

感謝,

回答

0

讓你的駱駝處理器通過@Component註解一個Spring bean。