2012-12-26 28 views
5

Có thể đặt tiêu đề thư thành giá trị được đọc từ tệp thuộc tính không, sử dụng thành phần thuộc tính camel? Tôi có thể đặt các thuộc tính đó cho các tùy chọn URI, nhưng tôi không thể đặt chúng làm giá trị tiêu đề.Cách đặt tiêu đề thành giá trị từ tệp thuộc tính trong Apache Camel

tôi cần một cái gì đó như thế này:

<camel:setHeader headerName="actionId"> 
    <camel:constant>{{onus.transPosting.RtSFailed}}</camel:constant> 
</camel:setHeader> 

nơi onus.transPosting.RtSFailed là chìa khóa hữu đặt trên một tập tin import bằng lạc đà Thuộc tính Component.

Lưu ý: Tôi đang sử dụng Apache Camel 2.10.1

CẬP NHẬT

Sử dụng <propertyPlaceholder> theo đề nghị của this discussion đã không làm việc và nó gây ra một ngoại lệ:

Caused by: org.apache.camel.language.simple.types.SimpleParserException: Unknown function: onus.transPosting.RtSFailed

+0

' $ {onus.transPosting.RtsFailed}' không hoạt động? (Tốt như không có kinh nghiệm với Apache Camel) –

+0

không có nó không: ( –

+0

Xem thảo luận này: http://camel.465427.n5.nabble.com/using-values-from-a-properties-file-in -setHeader-method-td5154287.html –

Trả lời

7

Có, bạn có thể sử dụng ngôn ngữ đơn giản có chức năng thuộc tính: http://camel.apache.org/simple

<camel:setHeader headerName="actionId"> 
    <camel:simple>${properties:onus.transPosting.RtSFailed}</camel:simple> 
</camel:setHeader> 

Mặc dù tôi nghĩ rằng chúng tôi đã khắc phục các phiên bản Camel mới nhất mà < lạc đà: hằng số> cũng sẽ giải quyết phần giữ chỗ của thuộc tính.

+1

Tệ của tôi, tôi nên đề cập đến bản phát hành tôi đang sử dụng, tôi đã cập nhật câu hỏi cho phù hợp. . Cảm ơn nhiều :) –

Các vấn đề liên quan