问题标签 [wildcard-mapping]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
377 浏览

elasticsearch - 使用通配符查询的大输入文本搜索的 Elastchsearch 异常,例如“原因”:“输入自动机太大:1001”

在对具有大输入文本(超过 1000 个字符)的弹性文档执行通配符搜索时

我在“开始于”搜索时遇到了这个例外

我从搜索开始,例如:“myinputtext..*” myinputtext = 超过 1000 个字符

详细异常: 抑制:org.elasticsearch.client.ResponseException:方法 [POST],主机 [http://localhost:9200],URI [/index_133/_search?pre_filter_shard_size=128&typed_keys=true&max_concurrent_shard_requests=5&ignore_unavailable=false&expand_wildcards=open&allow_no_indices=true&ignore_throttled= true&search_type=dfs_query_then_fetch&batched_reduce_size=512&ccs_minimize_roundtrips=true],状态行 [HTTP/1.1 400 Bad Request] {"error":{"root_cause":[{"type":"query_shard_exception","re​​ason":"未能创建查询:输入自动机太大:1001"}}}]},"status":400}

我的请求样本是:

我的 mappings.json 是:

请建议我您对在大型数据字段中搜索大型输入的想法。谢谢你的帮助。

0 投票
0 回答
22 浏览

java - Struts2 通配符映射在使用 Struts2 REST api 实现时不起作用

我正在尝试实现SEO 友好的 URL,例如/movies/{id}/actors/{actor_id}指出特定电影的演员详细信息。所以我尝试使用Advanced Wildcard mappings,但是当我在我的项目中实现 REST API 时它不起作用,但在我有一个简单的 struts2 应用程序的项目中也是如此,它将 JSP 页面显示为结果。

以下是运行的简单 struts2 应用程序的文件:

struts.xml

HelloWorldAction.java

hello_world.jsp

index.jsp:显示超链接以导航到各个页面。

OUTPUT: URL:http://localhost:8080/Sample/dsadsadsad/hello/kavin.action

Displays:

UID:dsadsadsad

用户名:kavin


以下是不工作的 struts2 REST API 应用程序的文件:

struts.xml

ActorsController.java

OUTPUT:

URL: GET:http://localhost:8080/movie_api/movies/1/actors.json

Error:

Struts 问题报告

Struts 检测到一个未处理的异常:

消息:没有为命名空间 /movies 和动作名称 1 映射的动作。堆栈跟踪没有为命名空间 /movies 和动作名称 1 映射的动作。 - [未知位置] com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java: 195) com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:76) org.apache.struts2.rest.RestActionProxyFactory.createActionProxy(RestActionProxyFactory.java:50) org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher. java:564) org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79) org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:141) org.mortbay.jetty.servlet。 ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) org.mortbay.jetty.servlet。ServletHandler.handle(ServletHandler.java:360) org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) org.mortbay。 jetty.handler.ContextHandler.handle(ContextHandler.java:726) org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206) org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) org.mortbay.jetty.Server.handle(Server.java: 324)org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:843)org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:第648章)jetty.HttpParser.parseAvailable(HttpParser.java:211) org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380) org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395) org.mortbay。 thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)


有人可以帮我弄清楚应该怎么做才能让它工作吗?我也尝试<constant name="struts.mapper.class" value="org.apache.struts2.dispatcher.mapper.Restful2ActionMapper" />Restful2ActionMapper添加。