Ich versuche, einen Wert aus dem defaultMuleMessage-Datentyp zu extrahieren, kann aber nicht die korrekte Syntax in Mule 3.7.3 erhalten. Kann jemand helfen?Wert von defaultMuleMessage erhalten
Der Wert I zu bekommen versuchen zu wird in der Variablen Registerkarte im Mule Debugger gefunden:
initialMessage (org.mule.DefaultMuleMessage)
-> properties (org.mule.MessagePropertiesContext)
--> inboundMap (org.mule.util.CopyOnWrite.CaseInsensitiveMap)
---> 7 (java.util.Collections$UnmodifiavleMap$UnmodifiableEntrySet$UnmodifiableEntry)
Bei 7 ist der Schlüssel = Organisation
Wenn ich "initialMessage" in die Debugger Typ Ich erhalte dies:
org.mule.DefaultMuleMessage
{
id=6980b240-b882-11e6-85f7-d26120524153
payload=java.lang.String
correlationId=<not set>
correlationGroup=-1
correlationSeq=-1
encoding=UTF-8
exceptionPayload=<not set>
Message properties:
INVOCATION scoped properties:
_ApikitResponseTransformer_apikitRouterRequest=yes
_ApikitResponseTransformer_bestMatchRepresentation=application/json
_ApikitResponseTransformer_contractMimeTypes=[MimeType{type='application/json'}]
counter=1
deterministicOrchestration=true
initialMessage=<<<MuleMessage>>>
logLevel=INFO
maskingEnabled=true
messageFormat=JSON
messageLocation=CLIENT_REQUEST
mongoOperation=insert-object-from-map
mongoQuery={messageLocation=client_request, payload={NullPayload}}
mongoSynchronous=false
nextOrchestratedFlow=products-getProducts
orchestrationFlows=[products-getProducts]
prevResponse=''
INBOUND scoped properties:
accept=*/*
accept-encoding=gzip, deflate, peerdist
accept-language=en-GB
organization=abc
connection=Keep-Alive
host=localhost:8089
http.listener.path=/api/*
http.method=GET
http.query.params=ParameterMap{[]}
http.query.string=
http.remote.address=/127.0.0.1
http.request.path=/api/products
http.request.uri=/api/products
http.scheme=http
http.uri.params=ParameterMap{[]}
http.version=HTTP/1.1
referer=http://localhost:8089/api/console/
ua-cpu=AMD64
user-agent=Mozilla/5.0 (Windows NT 6.1; Win64; x64; Trident/7.0; managedpc; rv:11.0) like Gecko
x-p2p-peerdist=Version=1.0
x-requested-with=XMLHttpRequest
OUTBOUND scoped properties:
Content-Type=text/plain;charset=UTF-8
MULE_ENCODING=UTF-8
SESSION scoped properties:
country=usa
resource=products
}
Ich versuche, den Wert "Organisation = abc" abzurufen.
Dank
Danke für die Antwort. Der Mule-Flow, den ich betrachte, hat an der Stelle, an der ich auf die Organisation verweisen muss, keine eingehenden Eigenschaften und sieht so aus, als hätte er sie in einer Variablen mit dem Namen initialMessage gespeichert, so dass ich herausfinden muss, wie ich den MEL-Ausdruck schreiben würde in der obigen Struktur. Ich habe versucht, durch die Variable initialMessage zu bekommen und zu durchlaufen, aber mit wenig Erfolg – user3165854