Java 诺瑞——”;无法推断类型参数";使用结果时出错。警告<&燃气轮机;在自定义步骤中

Java 诺瑞——”;无法推断类型参数";使用结果时出错。警告<&燃气轮机;在自定义步骤中,java,noraui,Java,Noraui,在我的一个场景中,我需要发出警告,但我不会停下来让这个错误出现:“无法推断Result.warning的类型参数” 事实上,我一直试图以我提出失败的方式提出警告: new Result.Warning<>(targetKey, Messages.format(TaroMessages.WARNING_RESOURCES_VALUE_DIFFERENCE_AFTER_REAFFECTATION, existing_value, new_value), true, oscarAccesC

在我的一个场景中,我需要发出警告,但我不会停下来让这个错误出现:“无法推断Result.warning的类型参数”

事实上,我一直试图以我提出失败的方式提出警告:

new Result.Warning<>(targetKey, Messages.format(TaroMessages.WARNING_RESOURCES_VALUE_DIFFERENCE_AFTER_REAFFECTATION, existing_value, new_value), true, oscarAccesClientPage.getCallBack());
new Result.Warning(targetKey,Messages.format(taromemessages.Warning_RESOURCES_VALUE_DIFFERENCE_reaffection,现有_VALUE,新_VALUE),true,oscarAccessClientPage.getCallBack());
我在里面使用它的自定义步骤如下:我尝试查看元素列表,并检查它们的现有值是否与以前保存的值相同

protected void checkXyResourcesValue(Integer xyIterator, List<WebElement> elements, String keyParameter) throws TechnicalException, FailureException  {
        try {
            Integer resIterator = 1;
            for(WebElement element : elements) {
                String targetKey = "XY" + xyIterator + "RES" + resIterator + keyParameter;
                String new_value = element.getAttribute(VALUE) != null ? element.getAttribute(VALUE) : element.getText();
                String existing_value = Context.getValue(targetKey) != null ? Context.getValue(targetKey) : targetKey;
                if (new_value != existing_value) {
                    new Result.Warning<>(targetKey, Messages.format(TaroMessages.WARNING_RESOURCES_VALUE_DIFFERENCE_AFTER_REAFFECTATION, existing_value, new_value), true, oscarAccesClientPage.getCallBack());
                }
                resIterator++;
            }
        } catch (Exception e) {
            new Result.Failure<>(e.getMessage(), Messages.format(TaroMessages.FAIL_MESSAGE_ACCES_CLIENT_XY_CHECK_RESOURCES_VALUE, keyParameter, xyIterator), true, oscarAccesClientPage.getCallBack());
        }
    }
protectedvoid checkXyResourcesValue(整数XY迭代器、列表元素、字符串键参数)引发TechnicalException、FailureException{
试一试{
整数重定时器=1;
for(WebElement:elements){
字符串targetKey=“XY”+XY迭代器+“RES”+重定时器+键参数;
字符串new_value=element.getAttribute(value)!=null?element.getAttribute(value):element.getText();
字符串现有值=Context.getValue(targetKey)!=null?Context.getValue(targetKey):targetKey;
if(新值!=现有值){
新结果.Warning(targetKey,Messages.format(taromemessages.Warning_RESOURCES_VALUE_DIFFERENCE_reaffection,现有_VALUE,新_VALUE),true,oscarAccessClientPage.getCallBack());
}
树脂计数器++;
}
}捕获(例外e){
新的Result.Failure(例如getMessage()、Messages.format(taromemessages.FAIL_MESSAGE_access_CLIENT_XY_CHECK_RESOURCES_VALUE、keyParameter、xyierator)、true、oscaraccessclientpage.getCallBack());
}
}
对于检查和保存值的方法,我实际上是从NoraUI的代码中得到启发,将值保存在上下文中或从中读取

我正在使用EclipseLuna4.4.2,并尝试使用JDK1.8.0131进行编译

这可能更多的是因为我不知道这在Java中是如何工作的,而不是一个真正的问题,所以提前感谢您的帮助或见解。请毫不犹豫地询问您是否需要有关代码或上下文的更多信息。

新结果。警告(targetKey,Messages.format(taromemessages.Warning\u RESOURCES\u VALUE\u DIFFERENCE\u reaffection,existing\u VALUE,new\u VALUE),true,0


如果不使用任何模型(数据序列化)或在序列中使用对象的id,请使用0。

它工作正常,谢谢!在API中,我没有看到最后一个参数是另一种类型。我还有一个问题(可能需要一个关于溢出的新问题,我不知道):警告不会导致错误,代码可以运行。但是我在日志或HTML报告的任何地方都看不到警告。如果我在这里看不到它们,我应该在哪里看到它们?你可以在HTML Report+屏幕截图中看到一条消息“Alert:…”。在Excel数据输出中,有一条橙色消息。