In einem Mule ESB-Projekt versuche ich, andere Dateien als eine HTML-Datei mit dem statischen Ressourcenhandler in Kombination mit dem http: Listener zu dienen. Ich habe eine einfache HTML-Datei, die ein Formular enthält und auf eine CSS-Datei im selben Verzeichnis verweist. Wenn ich zu http://localhost:8000 gehe, wird die Datei index.html geliefert. Die .css-Datei wird jedoch nicht bereitgestellt (404), obwohl sie sich im selben Verzeichnis wie die HTML-Datei befindet. Andere HTML-Dateien, die sich im selben Verzeichnis befinden, werden ebenfalls nicht bedient.Mule ESB Serving statische Dateien wie CSS
Beachten Sie, dass dies mit dem http-Inbound-Endpunkt funktioniert.
<http:inbound-endpoint exchange-pattern="request-response" host="${server.address}" port="${server.port}" doc:name="HTTP"/>
Ist der neue httpListener-Ansatz nicht zur Prime Time bereit?
ist hier der entsprechende Code:
Formular HTML (/index.html):
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<link rel="stylesheet" type="text/css" href="http://localhost:8081/uploadform.css">
</head>
<body>
<form action="http://localhost:8081/submitform" enctype="multipart/form-data" method="post">
<p>
Type a file title:<br>
<input type="text" name="title" size="30">
</p>
<p>
Please specify a file to upload:<br>
<input type="file" name="datafile" size="40">
</p>
<div>
<input type="submit" value="Send">
</div>
</form>
</body>
Relevante MULE Code:
<http:listener-config name="HTTP_Listener_Configuration" host="${server.address}" port="${server.port}" doc:name="HTTP Listener Configuration"/>
<flow name="HTTP_FORM" initialState="started">
<http:listener config-ref="HTTP_Listener_Configuration" path="/" allowedMethods="GET" doc:name="HTTP"/>
<http:static-resource-handler resourceBase="${app.home}/web" defaultFile="index.html" doc:name="HTTP Static Resource Handler"/>
</flow>
Hier konnte der Fehler sind Meldungen, die erscheinen:
Kein Zuhörer für Anfrage gefunden: (GET) /uploadform.css verfügbar Zuhörer sind: [([Beitrag])/SubmitForm/([get]) /]
es funktioniert ist, danke. Bitte beachten Sie, dass diese eher extern und nicht zusammenhängend fließen, so dass das ganze HTML funktioniert (zB das mit parseTemplate). Es ist wild bewacht (/ *) –