2013-02-08 13 views
5

Właściwość globalna nie jest usuwana z pliku właściwości, w wyniku czego wdrożenie mmc kończy się niepowodzeniem. Jakiekolwiek wyjaśnienia, dlaczego coś może być nie tak?Mule 3.3.0 - właściwość globalna nie jest usuwana z pliku właściwości

<context:property-placeholder location="airports.properties" /> 
<global-property name="airportslist" value="${airportslist}" /> 

otrzymuję następujący wyjątek -

 
com.mulesoft.mmc.agent.v3.dto.DeploymentException: Unexpected exception parsing XML document from URL [file:/arprt/mule-esb-ee/mule-enterprise-standalone-3.3.0/apps/myapp-1.0.0-SNAPSHOT/myapp-config.xml]; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'airportslist' (org.mule.api.lifecycle.InitialisationException) (org.mule.api.config.ConfigurationException) 
     at com.mulesoft.mmc.agent.service.impl.ApplicationServiceImpl.deploy(ApplicationServiceImpl.java:245) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 

airports.properties zawiera wyżej wymienioną właściwość:

airportslist={'SFO', 'YYZ', 'DFW'} 
+0

+1 dobre pytanie, napotykam ten sam problem –

Odpowiedz

4

Nie trzeba zadeklarować global-property jeżeli nieruchomość jest zdefiniowany w plik właściwości i załadowany z context:property-placeholder.

Wystarczy usunąć:

<global-property name="airportslist" value="${airportslist}" /> 

${airportslist} i używać w dowolnym miejscu trzeba go w config.

+0

Masz rację. Ale jestem po prostu ciekawy, czy ta nieruchomość nie zostanie rozwiązana? – user1493140

+1

Mmmh, trafiasz do potencjalnego problemu z zamawianiem: globalny-var prawdopodobnie zostanie rozwiązany przed załadowaniem symbolu zastępczego właściwości. Globalne vary mają być używane razem z rekwizytami, a nie w połączeniu z. –

+0

Dzięki David. Rozumiem. – user1493140

Powiązane problemy