My Oracle Support Banner

OHMPI Query Generates Error When Weight Option Is Set To False. (Doc ID 2859091.1)

Last updated on JULY 13, 2023

Applies to:

Oracle Healthcare Master Person Index - Version 5.0 and later
Information in this document applies to any platform.

Symptoms

On : 5.0 version, Master Index Main Component

When a custom query builder is implemented and when conditions are added, the following exception is thrown when weight option is set to false:

ERROR
-----------------------
MDM-MI-MSC582: MasterControllerImpl encountered a ProcessingException: name=com.sun.mdm.index.query.QMException, message=MDM-MI-QUE547: executeAssemble() failed: java.sql.SQLSyntaxErrorException: ORA-00936: missing expression
, stack trace=
com.sun.mdm.index.query.QueryManagerImpl.executeAssemble(QueryManagerImpl.java:307)
com.sun.mdm.index.query.QueryManagerImpl.executeAssemble(QueryManagerImpl.java:185)
com.sun.mdm.index.ejb.master.MasterControllerCoreImpl.searchEnterpriseObject(MasterControllerCoreImpl.java:4142)
com.sun.mdm.index.ejb.master.MasterControllerEJB.searchEnterpriseObject(MasterControllerEJB.java:667)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)


STEPS
-----------------------
The issue can be reproduced at will with the following steps:
 To replicate the problem:
- create a custom query builder that will not return inactive patient.
example: public class CustomQueryBuilder extends BasicQueryBuilder {

  public CustomQueryBuilder() {
  super();
  }

  @Override
  public QueryObject buildQueryObject(String[] ids, SearchCriteria crit,
  SearchOptions opts) throws QueryBuilderException {
  QueryObject queryObject = super.buildQueryObject(ids, crit, opts, false);

  return queryObject;
  }

- register your query in the query.xml
- deploy and use the Search operation in the OHMPI Web Service


- an exception is returned in the response:

S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
  
  
  ns0:Server
  MDM-MI-MSC582: MasterControllerImpl encountered a ProcessingException: name=com.sun.mdm.index.query.QMException, message=MDM-MI-QUE547: executeAssemble() failed: java.sql.SQLSyntaxErrorException: ORA-00936: missing expression
, stack trace=
com.sun.mdm.index.query.QueryManagerImpl.executeAssemble(QueryManagerImpl.java:307)
com.sun.mdm.index.query.QueryManagerImpl.executeAssemble(QueryManagerImpl.java:185)
com.sun.mdm.index.ejb.master.MasterControllerCoreImpl.searchEnterpriseObject(MasterControllerCoreImpl.java:4142)
com.sun.mdm.index.ejb.master.MasterControllerEJB.searchEnterpriseObject(MasterControllerEJB.java:667)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)



Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.