小编goa*_*ard的帖子

ElasticSearch不返回针对字符串属性的术语查询结果

我有以下索引文档:

{
    "visitor": {
        "id": <SOME STRING VALUE>
    }
}
Run Code Online (Sandbox Code Playgroud)

该文档的映射是:

"visitor": {
    "properties": {
        "id": {
            "type": "string"
         }
     }
 }
Run Code Online (Sandbox Code Playgroud)

当我运行以下查询时,我得到结果:

{
    "query": {
        "filtered": {
            "query": {
                "match_all": {}
             }
        },
        "filter": {
            "term": { "visitor.id": "123" }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,这不是:

{
    "query": {
        "filtered": {
            "query": {
                "match_all": {}
             }
        },
        "filter": {
            "term": { "visitor.id": "ABC" }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我一直认为这与分析仪有关,而且一直在追逐它.我也一直在想我是否错误地使用点符号来获取嵌套的访客属性.

任何人都可以告诉我为什么我不能过滤ID为"ABC"的访客,但可以访问123

elasticsearch

27
推荐指数
2
解决办法
3万
查看次数

死亡Sitefinity幽灵MVC小工具控制器困扰我

我们最近采用了Sitefinity并开始创建MVC小部件.总的来说,这已经像宣传的那样工作.然后,在测试了我的新小部件后,我意识到我将其命名为错误!然后我将控制器名称从MyWidgletController更改为MyWidgetController.在进行更改后,我开始得到异常"无法解析名称为'MySitefinityApp.Mvc.Controllers.MyWidgletController'的控制器".抓我的头.建立...一次.还是同样的问题.回收App-Pool.同样的问题.

这是我正在使用的控制器(名称已被更改以保护所涉及的小部件的身份):

[ControllerToolboxItem(Name = "MyWidget", Title = "My Widget", SectionName = "My Custom Widget Section")]
public class MyWidgetController : Controller
{
    public ActionResult Index()
    {
        return View("Default");
    }
}
Run Code Online (Sandbox Code Playgroud)

问题:为什么Sitefinity在不再存在时仍在寻找MyWidgletController?

asp.net-mvc-3 sitefinity-5

3
推荐指数
2
解决办法
1058
查看次数

ElasticSearch TransportClient失败,无法初始化类org.elasticsearch.common.lucene.Lucene

我的项目取决于

    <dependency>
        <groupId>org.elasticsearch</groupId>
        <artifactId>elasticsearch</artifactId>
        <version>2.3.3</version>
    </dependency>
    <dependency>
        <groupId>org.elasticsearch.plugin</groupId>
        <artifactId>shield</artifactId>
        <version>2.3.3</version>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

我的TransportClient看起来像这样:

public synchronized Client getClient(String clusterName, List<String> hosts, Integer port) {
// Build the settings for our client.
Settings settings = Settings.settingsBuilder()
        .put("transport.ping_schedule", "5s")
        .put("cluster.name", clusterName)
        .put("action.bulk.compress", false)
        .put("shield.transport.ssl", true)
        .put("request.headers.X-Found-Cluster", clusterName)
        .put("shield.user", "USERNAME:PASSWORD")
        .build();

TransportClient client = clients.get(clusterName);
if (client == null) {
    client = TransportClient.builder().addPlugin(ShieldPlugin.class).settings(settings).build();

    clients.put(clusterName, client);

    for(String host : hosts) {
        try {
            for (InetAddress address : InetAddress.getAllByName(host)) {
                if (address instanceof Inet4Address) {
                    client.addTransportAddress(new InetSocketTransportAddress(address, …
Run Code Online (Sandbox Code Playgroud)

java lucene elasticsearch

3
推荐指数
1
解决办法
4357
查看次数