java - 由于getJaloResult()错误,使用flexiblesearch服务连接hybris数据库的空指针异常
问题描述
null
尝试hybris
使用灵活搜索服务连接数据库时出现指针异常,hybris
似乎是由于getJaloResult()
方法。
我需要从hybris
商业数据库中检索某些数据。我试图hybris
通过使用方法来使用灵活的服务来做到这一点defaultFlexibleSearchService.search()
,但是我得到了一个null
指针异常。search()
似乎在方法尝试调用方法时发生了异常getJaloResult()
。我对解决方案一无所知 - 感谢您提供任何提示。
我的类定义代码在这里
package de.hybris.platform.integrationservices.audit;
import java.util.stream.Stream;
import com.sun.tools.javac.util.List;
import de.hybris.platform.audit.TypeAuditReportConfig;
import de.hybris.platform.audit.view.AuditViewService;
import de.hybris.platform.audit.view.impl.ReportView;
import de.hybris.platform.servicelayer.search.FlexibleSearchQuery;
import de.hybris.platform.servicelayer.search.FlexibleSearchService;
import de.hybris.platform.servicelayer.search.RelationQuery;
import de.hybris.platform.servicelayer.search.SearchResult;
import de.hybris.platform.servicelayer.search.impl.DefaultFlexibleSearchService;
import de.hybris.platform.integrationservices.model.IntegrationObjectModel;
public class IntegrationObjectAudit implements AuditViewService
{
private DefaultFlexibleSearchService defaultFlexibleSearchService;
public IntegrationObjectAudit() {
defaultFlexibleSearchService = new DefaultFlexibleSearchService();
}
public List<IntegrationObjectModel> searchModel(){
String query = "SELECT {PK} FROM {IntegrationObject}";
FlexibleSearchQuery flexibleSearchQuery = new FlexibleSearchQuery(query);
flexibleSearchQuery.setCount(1);
de.hybris.platform.servicelayer.search.SearchResult<IntegrationObjectModel> resListIntegrationModel = this.defaultFlexibleSearchService.search(query);
List<IntegrationObjectModel> resList = (List<IntegrationObjectModel>) resListIntegrationModel.getResult();
return resList;
}
}
解决方案
没注意到它是几天前发布的。希望你已经解决了。仍然添加我的答案,因为它可能对其他人有帮助。
我看到你没有在 IntegrationObjectAudit 中注入 flexibleSearchService bean。并且由于没有注入flexibleSearchService bean,因此当您在其上调用任何函数时会导致NullPointerException。
您可以按以下方式修复它(spring bean injection concept)
- 您应该创建一个setter函数并通过spring xml注入它
- 或使用@Resource 或@Autowire 注释相同
public class IntegrationObjectAudit implements AuditViewService
{
@Resource
private DefaultFlexibleSearchService flexibleSearchService;
.....
希望能帮助到你。请告诉我。
推荐阅读
- swiftui - SwiftUI 中的延迟手势
- javascript - 如何在 findOneAndUpdate 中使用 async-await
- python - 无法使用 BeautifulSoup 抓取图像 url
- python - 使用Opencv c ++在图像中查找小圆圈
- php - WordPress - 按最后日期更新获取帖子
- cv2 - 系统错误:
返回带有错误集的结果 - quarkus - Quarkus:在执行新的 YML 之前是否需要删除部署 kubernetes 组件
- node.js - 如何通过推送数组在 Mongoose 中建立一对多关系?
- numpy - 在 numpy 中为 2D 数组查找 2 个掩码之间的剩余掩码
- python - 安装构建依赖项...使用 pip 安装 pyInstaller 时出错