मैं जेटी दस्तावेज उदाहरणों के बाद एम्बेडेड जेट्टी सर्वर में एक सरल पुनर्लेखन नियम लागू करने की कोशिश कर रहा हूं।एंबेडेड जेट्टी ठीक से काम नहीं कर रहा है
मैं /admin.html को फिर से लिखने के लिए /admin/
पर अनुरोध चाहता हूं। फिलहाल अगर मैं /admin/
का अनुरोध करता हूं तो मुझे /admin.html
के साथ 404 त्रुटि मिलती है। लेकिन अगर मैं सीधे /admin.html
का अनुरोध करता हूं, तो यह काम करता है!
स्टैक ओवरफ्लो पर 2 अन्य समान पोस्ट हैं लेकिन प्रश्न के उत्तर नहीं!
WebAppContext _ctx = new WebAppContext();
_ctx.setContextPath("/");
_ctx.setDefaultsDescriptor(JETTY_DEFAULTS_DESCRIPTOR);
_ctx.setParentLoaderPriority(true);
_ctx.setWar(getShadedWarUrl());
_ctx.setResourceBase(getShadedWarUrl());
RewriteHandler rewriter = new RewriteHandler();
rewriter.setRewritePathInfo(true);
rewriter.setRewriteRequestURI(true);
rewriter.setOriginalPathAttribute("requestedPath");
RewritePatternRule admin = new RewritePatternRule();
admin.setPattern("/admin/");
admin.setReplacement("/admin.html");
admin.setTerminating(true); // this will stop Jetty from chaining the rewrites
rewriter.addRule(admin);
_ctx.setHandler(rewriter);
HandlerCollection _handlerCollection = new HandlerCollection();
_handlerCollection.setHandlers(new Handler[] {_ctx});
server.setHandlers(_result);
कि बहुत उपयोगी है में परिणाम होगा! धन्यवाद! – Melissa