1 2 Previous Next 15 Replies Latest reply on Feb 26, 2016 3:13 PM by drathnow

    SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final

    drathnow

      I'm moving our app from JBoss EAP 6.2 to Wildfly 10.0.0.Final and have run into a problem with some existing code that uses Infinispan.  I installed Wildfly and then downloaded the the Wildfly Infinispan 8.1.1 Embedded modules.

       

      My app has a couple of caches but only one that uses an indexed entity.  The app deploys okay but as soon as I try to do a query on my cache, I'm getting the exception:

       

           org.hibernate.search.exception.SearchException: HSEARCH000278: Can't build query for type 'zedi.pacbridge.app.controls.OutgoingRequest' which is neither indexed nor has any indexed sub-types.

       

      I'm omitting the entire stack trace because I doubt it's necessary but if I'm wrong, I can post.  The exception is being tossed when I try to construct the QueryBinder:

       

              SearchManager searchManager = Search.getSearchManager(theCache);

              QueryBuilder queryBuilder = searchManager.buildQueryBuilderForClass(OutgoingRequest.class).get(); //<-- Toss point

       

      The entity in question (OutgoingRequest) is pasted below.  One thing I tried was to write a standalone test program that creates a cache, and then builds a query for the entity.  This program runs fine.  I.e. it got past the point where my deployed application raises the SearchException

       

      import java.io.Serializable;

      import java.text.SimpleDateFormat;

      import java.util.UUID;

      import java.util.concurrent.TimeUnit;

      import org.hibernate.search.annotations.Field;

      import org.hibernate.search.annotations.FieldBridge;

      import org.hibernate.search.annotations.Indexed;

      import org.json.JSONObject;

      import zedi.pacbridge.net.controls.ControlStatus;

      import zedi.pacbridge.utl.SiteAddress;

       

      @Indexed

      public class OutgoingRequest implements Serializable {

          private static final long serialVersionUID = 1001L;

       

          @Field

          private String requestId;

          @Field

          private Long eventId;

          @Field

          @FieldBridge(impl = SiteAddressFieldBridge.class)

          private SiteAddress siteAddress;

       

          private Long creationTime;

          private boolean cancelled;

          private int sendAttempts;

          private Long lastSendAttempt;

          private String lastStatusMessage;

          private ControlStatus status;

          private OutgoingRequestType outgoingRequestType;

       

          public OutgoingRequest() {

          }

       

          protected OutgoingRequest(SiteAddress siteAddress, Long eventId, OutgoingRequestType type) {

              this.eventId = eventId;

              this.siteAddress = siteAddress;

              this.outgoingRequestType = type;

              this.creationTime = System.currentTimeMillis();

              this.requestId = UUID.randomUUID().toString();

              this.status = ControlStatus.PENDING;

              this.lastStatusMessage = "<none>";

          }

       

          public Integer getResponseTimeoutSeconds() {

              throw new UnsupportedOperationException("Method must be overridden by subclass");

          }

         

          public OutgoingRequestProcessor outgoingRequestProcessor() {

              throw new UnsupportedOperationException("Method must be overridden by subclass");

          }

       

          public boolean hasExpired(Long expirationMinutes) {

              return (System.currentTimeMillis() - creationTime) > TimeUnit.MINUTES.toMillis(expirationMinutes);

          }

         

          public void incrementSendAttempts() {

              sendAttempts++;

              lastSendAttempt = System.currentTimeMillis();

          }

       

          public Long getLastSendAttempt() {

              return lastSendAttempt;

          }

         

          public String getLastStatusMessage() {

              return lastStatusMessage;

          }

         

          public Integer getSendAttempts() {

              return sendAttempts;

          }

         

          public ControlStatus getStatus() {

              return status;

          }

       

          public void setStatus(ControlStatus status) {

              this.status = status;

          }

       

          public OutgoingRequestType getType() {

              return outgoingRequestType;

          }

       

          public void cancel() {

              cancelled = true;

          }

       

          public boolean isCancelled() {

              return cancelled;

          }

       

          public String getRequestId() {

              return requestId;

          }

       

          public Long getCreationTime() {

              return creationTime;

          }

       

          public Long getEventId() {

              return eventId;

          }

       

          public SiteAddress getSiteAddress() {

              return siteAddress;

          }

         

          public void setLastStatusMessage(String lastStatusMessage) {

              this.lastStatusMessage = lastStatusMessage;

          }   

      }


      One thing that occurred to me is that I might be having conflict with classes from multiple Jar files, which makes me wonder if I've installed the Infinispan Wildfly Embedded modules properly.   In the past, I've just copied them under the "/modules/system/layers" and added exports to my manifest. Is this correct?  Is there some doc that describe the steps to install the embedded modules?


      Thanks

        • 1. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
          drathnow

          I'm really in a bind here.  Can anyone help??

           

          Here is the full stack trace:

           

          Caused by: org.hibernate.search.exception.SearchException: HSEARCH000278: Can't build query for type 'zedi.pacbridge.app.controls.OutgoingRequest' which is neither indexed nor has any indexed sub-types.

            at org.hibernate.search.query.dsl.impl.ConnectedQueryContextBuilder$HSearchEntityContext.<init>(ConnectedQueryContextBuilder.java:51)

            at org.hibernate.search.query.dsl.impl.ConnectedQueryContextBuilder.forEntity(ConnectedQueryContextBuilder.java:37)

            at org.infinispan.query.impl.SearchManagerImpl.buildQueryBuilderForClass(SearchManagerImpl.java:88)

            at zedi.pacbridge.app.controls.OutgoingRequestCacheImpl.outgoingRequestsForSiteAddress(OutgoingRequestCacheImpl.java:62)

            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

            at java.lang.reflect.Method.invoke(Method.java:497)

            at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)

            at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

            at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:437)

            at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:82)

            at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:93)

            at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)

            at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

            at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)

            at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

            at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)

            at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

            at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:437)

            at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:73)

            at org.jboss.as.weld.ejb.EjbRequestScopeActivationInterceptor.processInvocation(EjbRequestScopeActivationInterceptor.java:83)

            at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

            at org.jboss.as.ee.concurrent.ConcurrentContextInterceptor.processInvocation(ConcurrentContextInterceptor.java:45)

            at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

            at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:21)

            at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

            at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)

            at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:52)

            at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

            at org.jboss.as.ejb3.component.pool.PooledInstanceInterceptor.processInvocation(PooledInstanceInterceptor.java:51)

            at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

            at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:275)

           

          I've walked through this with the debugger while running my app under Wildfly and standalone and found that this line in ConnectedQueryContextBuilder$HSearchEntityContext.getIndexBoundType() is different:

           

          if ( factory.getIndexBinding( entityType ) != null ) {

              return entityType;

          }

           

          In the case of my standalone program, the call to getIndexBinding returns a non-null value everything is good. Under Wildfly, I get null.  I'm assuming that when run under Wildfly, it is not picking up the fact that my entity is "@Indexed".  That much is obvious, but why?  Does it have something to do with the conflicts between the embedded jarfiles and the jarfiles distributed with Wildfly?

          • 2. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
            gustavonalle

            The modules should be extracted on WILDFLY_ROOT/modules, and your manifest should point to the right slot:

               

            "org.infinispan:ispn-8.1 services"

             

            Also, you shouldn't have Infinispan jars inside your deployment

            • 3. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
              drathnow

              Thanks for your response Gustavo!

               

              I've done all those things but I was wondering if I might have messed up the modules under my WILDFLY_ROOT/modules directory.  So, I started from a fresh Wildfly install and put the embedded modules files under WILDFLY_ROOT/modules.  Good news is that I'm not getting the SearchException anymore, which means I obviously had something messed up.  Bad news is that now I'm getting

               

              java.lang.IllegalArgumentException: Indexing was not enabled on this cache. interface org.hibernate.search.spi.SearchIntegrator not found in registry

               

              on this line:

               

              SearchManager searchManager = Search.getSearchManager(outgoingRequestCache);

               

              I am creating my cache in code and have enabled indexing, so I doubt that's is the problem.  Is this a class path issue?  I can see SearchIntegrator in the hibernate-search-engine-5.5.1.Final.jar jarfile.  Besides "org.infinispan:isp-8.1 services", does my manifest need anything else?

              • 4. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
                drathnow

                I am still plagued by this problem and can't find a solution.

                 

                Can anyone shed light on what the exception

                 

                java.lang.IllegalArgumentException: Indexing was not enabled on this cache. interface org.hibernate.search.spi.SearchIntegrator not found in registry

                 

                means???  When I search for this class under <WILDFLY_ROOT>/modules, it shows up in two places:

                 

                ./org/hibernate/search/engine/5.5.1.Final/hibernate-search-engine-5.5.1.Final.jar

                ./system/layers/base/org/hibernate/search/engine/main/hibernate-search-engine-5.5.1.Final.jar

                 

                The first is part of the Embedded Infinispan modules and the second is part of the Wildfly distribution.  Is there a conflict with these two jarfiles that could be causing the issue??

                 

                ANY help would be greatly appreciated!

                • 5. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
                  gustavonalle

                  Hi, could you post the full stack trace and the manifest entries you are using? Whatch out for typos, the correct slot is ispn-8.1  and not isp-8.1 

                   

                  It appears that you are using the Infinispan version that is inside WildFly, configuring your caches inside the standalone.xml,  but WildFly 10.0.0 removed support for Infinispan Query in version 10:  https://issues.jboss.org/browse/WFLY-4695

                  So what you need to do is use instead the modules provided by Infinispan (the place you extracted looks fine), with the right manifest entries:

                   

                  org.infinispan: ispn-8.1 services, org.infinispan.query: ispn-8.1 services

                   

                  The downside of not using the Infinispan version inside Wildfly is that you will have to configure Infinispan inside your application using Infinispan's XML file or programmatic configuration. The advantage is that you will be able to use the latest Infinispan versions without relying on Wildfly's version.

                  • 6. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
                    drathnow

                    Hi Gustavo,

                     

                    Thanks again for the reply and I'm aware of the pros and cons of using the Embedded Infinispan modules. I am using ispn-8.1 but my manifest entry was missing

                     

                    org.infinispan.query:ispn-8.1 services

                     

                    And that seems to be the fix for the one problem. I added that entry into my manifest, but now I seem to be back to my original problem where either Hibernate seems to think my entity isn't an indexed type:

                     

                    zedi.pacbridge.app.controls.OutgoingRequestCache.outgoingRequestsForSiteAddress(zedi.pacbridge.utl.SiteAddress): javax.ejb.EJBException: org.hibernate.search.exception.SearchException: HSEARCH000278: Can't build query for type 'zedi.pacbridge.app.controls.OutgoingRequest' which is neither indexed nor has any indexed sub-types.

                      at org.jboss.as.ejb3.tx.CMTTxInterceptor.handleExceptionInOurTx(CMTTxInterceptor.java:187)

                      at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:277)

                      at org.jboss.as.ejb3.tx.CMTTxInterceptor.required(CMTTxInterceptor.java:327)

                      at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:239)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.as.ejb3.component.invocationmetrics.WaitTimeInterceptor.processInvocation(WaitTimeInterceptor.java:43)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.as.ejb3.security.SecurityContextInterceptor.processInvocation(SecurityContextInterceptor.java:100)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:66)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:54)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.invocation.ContextClassLoaderInterceptor.processInvocation(ContextClassLoaderInterceptor.java:64)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)

                      at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:636)

                      at org.jboss.invocation.AccessCheckingInterceptor.processInvocation(AccessCheckingInterceptor.java:61)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)

                      at org.jboss.invocation.PrivilegedWithCombinerInterceptor.processInvocation(PrivilegedWithCombinerInterceptor.java:80)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)

                      at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:195)

                      at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:185)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)

                      at org.jboss.as.ee.component.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:73)

                      at zedi.pacbridge.app.controls.OutgoingRequestCache$$$view21.outgoingRequestsForSiteAddress(Unknown Source)

                      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

                      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

                      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

                      at java.lang.reflect.Method.invoke(Method.java:497)

                      at org.jboss.weld.util.reflection.Reflections.invokeAndUnwrap(Reflections.java:436)

                      at org.jboss.weld.bean.proxy.EnterpriseBeanProxyMethodHandler.invoke(EnterpriseBeanProxyMethodHandler.java:127)

                      at org.jboss.weld.bean.proxy.EnterpriseTargetBeanInstance.invoke(EnterpriseTargetBeanInstance.java:56)

                      at org.jboss.weld.bean.proxy.InjectionPointPropagatingEnterpriseTargetBeanInstance.invoke(InjectionPointPropagatingEnterpriseTargetBeanInstance.java:67)

                      at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:100)

                      at zedi.pacbridge.app.controls.OutgoingRequestCache$OutgoingRequestCacheUpdateDelegate$20236255$Proxy$_$$_Weld$EnterpriseProxy$.outgoingRequestsForSiteAddress(Unknown Source)

                      at zedi.pacbridge.app.net.ConnectionManagerHelper$WorkerRunner.run(ConnectionManagerHelper.java:72)

                      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

                      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

                      at java.lang.Thread.run(Thread.java:745)

                    Caused by: org.hibernate.search.exception.SearchException: HSEARCH000278: Can't build query for type 'zedi.pacbridge.app.controls.OutgoingRequest' which is neither indexed nor has any indexed sub-types.

                      at org.hibernate.search.query.dsl.impl.ConnectedQueryContextBuilder$HSearchEntityContext.<init>(ConnectedQueryContextBuilder.java:51)

                      at org.hibernate.search.query.dsl.impl.ConnectedQueryContextBuilder.forEntity(ConnectedQueryContextBuilder.java:37)

                      at org.infinispan.query.impl.SearchManagerImpl.buildQueryBuilderForClass(SearchManagerImpl.java:88)

                      at zedi.pacbridge.app.controls.OutgoingRequestCacheImpl.outgoingRequestsForSiteAddress(OutgoingRequestCacheImpl.java:84)

                      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

                      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

                      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

                      at java.lang.reflect.Method.invoke(Method.java:497)

                      at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:437)

                      at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:82)

                      at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:93)

                      at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:437)

                      at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:73)

                      at org.jboss.as.weld.ejb.EjbRequestScopeActivationInterceptor.processInvocation(EjbRequestScopeActivationInterceptor.java:83)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.as.ee.concurrent.ConcurrentContextInterceptor.processInvocation(ConcurrentContextInterceptor.java:45)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:21)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)

                      at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:52)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.as.ejb3.component.pool.PooledInstanceInterceptor.processInvocation(PooledInstanceInterceptor.java:51)

                      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                      at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:275)

                      ... 47 more

                     

                    My manifest entries look like this:

                     

                    Dependencies: org.infinispan:ispn-8.1 services,

                                  org.infinispan.query:ispn-8.1 services,

                                  org.wildfly.clustering.jgroups.spi export,

                                  org.jboss.as.naming export,

                                  org.jgroups export,

                                  org.jboss.as.clustering.infinispan export

                    • 7. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
                      gustavonalle

                      The manifest is dragging the internal Infinispan version that is part of Wildfly, you should remove all but the first two entries.

                      • 8. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
                        drathnow

                        I need at least one of those so that I could access cluster lock manager but I've since decided I could do what I need with a cluster singleton.  I hadn't had a chance to remove the code nor the dependencies.  For now, I've removed all the code and dependencies so it now looks like this:

                         

                        Dependencies: org.infinispan:ispn-8.1 services,

                                      org.infinispan.query:ispn-8.1 services


                        Unfortunately, it hasn't fixed the problem.  I'm still getting the same exception when I try to query:


                        2016-02-24 09:54:39,630 ERROR [zedi.pacbridge.net.TcpNetworkAdapter] (Network Dispatcher - 6) Unable to handle incoming data: javax.ejb.EJBTransactionRolledbackException: HSEARCH000278: Can't build query for type 'zedi.pacbridge.app.controls.OutgoingRequest' which is neither indexed nor has any indexed sub-types.

                          at org.jboss.as.ejb3.tx.CMTTxInterceptor.handleInCallerTx(CMTTxInterceptor.java:159)

                          at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInCallerTx(CMTTxInterceptor.java:256)

                          at org.jboss.as.ejb3.tx.CMTTxInterceptor.required(CMTTxInterceptor.java:329)

                          at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:239)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.invocationmetrics.WaitTimeInterceptor.processInvocation(WaitTimeInterceptor.java:43)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.security.SecurityContextInterceptor.processInvocation(SecurityContextInterceptor.java:100)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:66)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:54)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.ContextClassLoaderInterceptor.processInvocation(ContextClassLoaderInterceptor.java:64)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)

                          at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:636)

                          at org.jboss.invocation.AccessCheckingInterceptor.processInvocation(AccessCheckingInterceptor.java:61)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)

                          at org.jboss.invocation.PrivilegedWithCombinerInterceptor.processInvocation(PrivilegedWithCombinerInterceptor.java:80)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)

                          at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:195)

                          at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:185)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)

                          at org.jboss.as.ee.component.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:73)

                          at zedi.pacbridge.app.controls.OutgoingRequestCache$$$view20.hasOutgoingRequests(Unknown Source)

                          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

                          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

                          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

                          at java.lang.reflect.Method.invoke(Method.java:497)

                          at org.jboss.weld.util.reflection.Reflections.invokeAndUnwrap(Reflections.java:436)

                          at org.jboss.weld.bean.proxy.EnterpriseBeanProxyMethodHandler.invoke(EnterpriseBeanProxyMethodHandler.java:127)

                          at org.jboss.weld.bean.proxy.EnterpriseTargetBeanInstance.invoke(EnterpriseTargetBeanInstance.java:56)

                          at org.jboss.weld.bean.proxy.InjectionPointPropagatingEnterpriseTargetBeanInstance.invoke(InjectionPointPropagatingEnterpriseTargetBeanInstance.java:67)

                          at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:100)

                          at zedi.pacbridge.app.controls.OutgoingRequestCache$OutgoingRequestCacheUpdateDelegate$20236255$Proxy$_$$_Weld$EnterpriseProxy$.hasOutgoingRequests(Unknown Source)

                          at zedi.pacbridge.app.auth.zap.ZapAuthenticationDelegate.hasOutgoingDataRequests(ZapAuthenticationDelegate.java:57)

                          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

                          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

                          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

                          at java.lang.reflect.Method.invoke(Method.java:497)

                          at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:437)

                          at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:82)

                          at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:93)

                          at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:437)

                          at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:73)

                          at org.jboss.as.weld.ejb.EjbRequestScopeActivationInterceptor.processInvocation(EjbRequestScopeActivationInterceptor.java:83)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ee.concurrent.ConcurrentContextInterceptor.processInvocation(ConcurrentContextInterceptor.java:45)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:21)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)

                          at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:52)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.pool.PooledInstanceInterceptor.processInvocation(PooledInstanceInterceptor.java:51)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:275)

                          at org.jboss.as.ejb3.tx.CMTTxInterceptor.required(CMTTxInterceptor.java:327)

                          at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:239)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.invocationmetrics.WaitTimeInterceptor.processInvocation(WaitTimeInterceptor.java:43)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.security.SecurityContextInterceptor.processInvocation(SecurityContextInterceptor.java:100)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:66)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:54)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.ContextClassLoaderInterceptor.processInvocation(ContextClassLoaderInterceptor.java:64)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)

                          at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:636)

                          at org.jboss.invocation.AccessCheckingInterceptor.processInvocation(AccessCheckingInterceptor.java:61)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)

                          at org.jboss.invocation.PrivilegedWithCombinerInterceptor.processInvocation(PrivilegedWithCombinerInterceptor.java:80)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)

                          at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:195)

                          at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:185)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)

                          at org.jboss.as.ee.component.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:73)

                          at zedi.pacbridge.app.auth.AuthenticationDelegate$$$view36.hasOutgoingDataRequests(Unknown Source)

                          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

                          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

                          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

                          at java.lang.reflect.Method.invoke(Method.java:497)

                          at org.jboss.weld.util.reflection.Reflections.invokeAndUnwrap(Reflections.java:436)

                          at org.jboss.weld.bean.proxy.EnterpriseBeanProxyMethodHandler.invoke(EnterpriseBeanProxyMethodHandler.java:127)

                          at org.jboss.weld.bean.proxy.EnterpriseTargetBeanInstance.invoke(EnterpriseTargetBeanInstance.java:56)

                          at org.jboss.weld.bean.proxy.InjectionPointPropagatingEnterpriseTargetBeanInstance.invoke(InjectionPointPropagatingEnterpriseTargetBeanInstance.java:67)

                          at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:100)

                          at zedi.pacbridge.app.auth.zap.AuthenticationDelegate$1007064604$Proxy$_$$_Weld$EnterpriseProxy$.hasOutgoingDataRequests(Unknown Source)

                          at zedi.pacbridge.app.auth.zap.ZapAuthenticationStrategy.createAuthenticationResponseMessage(ZapAuthenticationStrategy.java:117)

                          at zedi.pacbridge.app.auth.zap.ZapAuthenticationStrategy.access$300(ZapAuthenticationStrategy.java:30)

                          at zedi.pacbridge.app.auth.zap.ZapAuthenticationStrategy$WaitingForDeviceResponseState.handleBytesFromClient(ZapAuthenticationStrategy.java:152)

                          at zedi.pacbridge.app.auth.zap.ZapAuthenticationStrategy.handleBytesFromClient(ZapAuthenticationStrategy.java:79)

                          at zedi.pacbridge.net.DefaultSecurityLayer.receive(DefaultSecurityLayer.java:56)

                          at zedi.pacbridge.net.NoTransportLayer.receive(NoTransportLayer.java:42)

                          at zedi.pacbridge.net.CountedByteFramingLayer.processReceivedBytesFromByteBuffer(CountedByteFramingLayer.java:68)

                          at zedi.pacbridge.net.CountedByteFramingLayer.processReceivedBytesFromByteBuffer(CountedByteFramingLayer.java:91)

                          at zedi.pacbridge.net.CountedByteFramingLayer.receive(CountedByteFramingLayer.java:100)

                          at zedi.pacbridge.net.TcpNetworkAdapter.handleRead(TcpNetworkAdapter.java:171)

                          at zedi.pacbridge.net.core.NetworkEventDispatcher.dispatchEventForSelectionKey(NetworkEventDispatcher.java:195)

                          at zedi.pacbridge.net.core.NetworkEventDispatcher.processPendingEvents(NetworkEventDispatcher.java:166)

                          at zedi.pacbridge.net.core.NetworkEventDispatcher.doSelect(NetworkEventDispatcher.java:152)

                          at zedi.pacbridge.net.core.NetworkEventDispatcher.shouldExitAfterMainLoop(NetworkEventDispatcher.java:116)

                          at zedi.pacbridge.utl.concurrent.DetachedTaskRunner.run(DetachedTaskRunner.java:43)

                          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

                          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

                          at java.lang.Thread.run(Thread.java:745)

                        Caused by: org.hibernate.search.exception.SearchException: HSEARCH000278: Can't build query for type 'zedi.pacbridge.app.controls.OutgoingRequest' which is neither indexed nor has any indexed sub-types.

                          at org.hibernate.search.query.dsl.impl.ConnectedQueryContextBuilder$HSearchEntityContext.<init>(ConnectedQueryContextBuilder.java:51)

                          at org.hibernate.search.query.dsl.impl.ConnectedQueryContextBuilder.forEntity(ConnectedQueryContextBuilder.java:37)

                          at org.infinispan.query.impl.SearchManagerImpl.buildQueryBuilderForClass(SearchManagerImpl.java:88)

                          at zedi.pacbridge.app.controls.OutgoingRequestCacheImpl.outgoingRequestsForSiteAddress(OutgoingRequestCacheImpl.java:84)

                          at zedi.pacbridge.app.controls.OutgoingRequestCacheImpl.hasOutgoingRequests(OutgoingRequestCacheImpl.java:97)

                          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

                          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

                          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

                          at java.lang.reflect.Method.invoke(Method.java:497)

                          at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:437)

                          at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:82)

                          at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:93)

                          at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:437)

                          at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:64)

                          at org.jboss.as.weld.ejb.EjbRequestScopeActivationInterceptor.processInvocation(EjbRequestScopeActivationInterceptor.java:83)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ee.concurrent.ConcurrentContextInterceptor.processInvocation(ConcurrentContextInterceptor.java:45)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:21)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)

                          at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:52)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.component.pool.PooledInstanceInterceptor.processInvocation(PooledInstanceInterceptor.java:51)

                          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

                          at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInCallerTx(CMTTxInterceptor.java:254)

                          ... 134 more

                        • 9. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
                          gustavonalle

                          Dave, unfortunately I can't think of any more recommendations apart from extracting the modules and add the two manifest entries, that's the configuration known to work.

                          Please open a JIRA for further inspection attaching the server log, after enabling in your clustered.xml or standalone.xml:

                          <logger category="org.jboss.modules">

                                <level name="TRACE"/>

                          </logger>

                          <logger category="org.infinispan">

                                <level name="DEBUG"/>

                          </logger>

                          <logger category="org.hibernate">

                                <level name="DEBUG"/>

                          </logger>

                          • 10. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
                            drathnow

                            Gustavo,

                             

                            Thanks again for your help.  I don't know now if this will help but I put in some tracing to see what jarfiles relavent classes were being pulled from.  I made sure that all my Infinispan Embedded Modules files were installed under <WILDFLY_HOME>/modules.  When I run my app, what I found was that some files are being pulled in from the Infinispan Embedded Modules and some are being pulled in from distrubtion that comes with Wildfly 10:

                             

                            org.infinispan.Cache:                               modules/org/infinispan/core/ispn-8.1/infinispan-core.jar

                            org.infinispan.query.CacheQuery:                    modules/org/infinispan/query/ispn-8.1/infinispan-query.jar

                            org.infinispan.query.Search:                        modules/org/infinispan/query/ispn-8.1/infinispan-query.jar

                            org.infinispan.query.SearchManager:                 modules/org/infinispan/query/ispn-8.1/infinispan-query.jar

                             

                            org.apache.lucene.search.Query:                     modules/system/layers/base/org/apache/lucene/main/lucene-core-5.3.1.jar

                            org.hibernate.search.query.dsl.QueryBuilder:        modules/system/layers/base/org/hibernate/search/engine/main/hibernate-search-engine-5.5.1.Final.jar

                            org.hibernate.search.annotations.Field:             modules/system/layers/base/org/hibernate/search/engine/main/hibernate-search-engine-5.5.1.Final.jar

                            org.hibernate.search.annotations.FieldBridge:       modules/system/layers/base/org/hibernate/search/engine/main/hibernate-search-engine-5.5.1.Final.jar

                            org.hibernate.search.annotations.Indexed:           modules/system/layers/base/org/hibernate/search/engine/main/hibernate-search-engine-5.5.1.Final.jar

                            org.hibernate.search.annotations.IndexedEmbedded:   modules/system/layers/base/org/hibernate/search/engine/main/hibernate-search-engine-5.5.1.Final.jar

                            org.hibernate.search.spi.SearchIntegrator:          modules/system/layers/base/org/hibernate/search/engine/main/hibernate-search-engine-5.5.1.Final.jar

                             

                            After this, I extracted my relavent application classes and put them into a separate war and deployed them.  I ran a query and it worked without complaining.  When I look at where all the classes are being pulled from, they are all coming from the Infinispan Embedded Modules.

                             

                            org.hibernate.search.query.dsl.QueryBuilder:        modules/org/hibernate/search/engine/5.5.1.Final/hibernate-search-engine-5.5.1.Final.jar

                            org.infinispan.Cache:                               modules/org/infinispan/core/ispn-8.1/infinispan-core.jar

                            org.infinispan.query.CacheQuery:                    modules/org/infinispan/query/ispn-8.1/infinispan-query.jar

                            org.infinispan.query.Search:                        modules/org/infinispan/query/ispn-8.1/infinispan-query.jar

                            org.infinispan.query.SearchManager:                 modules/org/infinispan/query/ispn-8.1/infinispan-query.jar

                             

                            org.hibernate.search.annotations.Field:             modules/org/hibernate/search/engine/5.5.1.Final/hibernate-search-engine-5.5.1.Final.jar

                            org.hibernate.search.annotations.FieldBridge:       modules/org/hibernate/search/engine/5.5.1.Final/hibernate-search-engine-5.5.1.Final.jar

                            org.hibernate.search.annotations.Indexed:           modules/org/hibernate/search/engine/5.5.1.Final/hibernate-search-engine-5.5.1.Final.jar

                            org.hibernate.search.annotations.IndexedEmbedded:   modules/org/hibernate/search/engine/5.5.1.Final/hibernate-search-engine-5.5.1.Final.jar

                            org.hibernate.search.spi.SearchIntegrator:          modules/org/hibernate/search/engine/5.5.1.Final/hibernate-search-engine-5.5.1.Final.jar

                             

                            I'm going to assume this is the problem and is obviously caused by the way I've packaged my ear. I'm hesitant to open a JIRA since this is obviously my problem and not a bug.  I just wish I could figure out what's different about how I built my ear for Wildfly and how it was built for EAP 6.2, where is was working.  Let me know if you have any ideas where I might go from here.  If not, thanks again for your help.

                             

                            Dave.

                            • 11. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
                              gustavonalle

                              So the content of the WAR and EAR are the same? One thing to keep in mind is that Wildfly can automatically "detect" certain traits in your deployment and add a dependency automatically: this is described in details at https://docs.jboss.org/author/display/WFLY10/Implicit+module+dependencies+for+deployment. Also, WF 10 specifically started to auto-include dependencies for hibernate search, as described in https://issues.jboss.org/browse/WFLY-4956, but it also allows to override the behavior in case you've already have a dependency on another  hibernate search slot.

                              • 12. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
                                drathnow

                                Not exactly...and sorry, I errored!  The test war was actually a jarfile containing my classes. I rigged something that allowed me to fire off query.  It was a quick hack that contained a small number of classes I need to test. 

                                 

                                My EAR file, the one causing me all the trouble, looks like this:

                                 

                                mayapp.ear

                                  |

                                  |-----/lib

                                  |       |

                                  |       |--jarfile1.jar

                                  |       |--jarfile2.jar

                                  |

                                  |-----myejbs.jar <- Uses Infinispan

                                  |-----myweb.war

                                 

                                All Infinispan access takes place in myejbs.jar, which also contains the manifest "Dependencies" header.

                                • 13. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
                                  drathnow

                                  I have an update!

                                   

                                  I one of the jarfiles in my ear contains Entities and so has a persistence.xml and a dependency on Hibernate.  Fortunately, it's not that big so I was able to carved out the code from the rest of my app that relies on this jar.  I rebuilt my ear without that jarfile and voila! things started working.  Just to be sure, I rebuild my ear with this jar back in and sure enough, things broke.

                                   

                                  I'm assuming that JBoss sees when JBoss sees this jarfile, it is adding a dependency on it's internal Hibernate search classes.  Is there a way to fix this?

                                  • 14. Re: SearchException after moving from EAP 6.2 to Wildfly 10.0.0.Final
                                    gustavonalle

                                    Try to set "wildfly.jpa.hibernate.search.module" to "none" in your persistence.xml, it should prevent adding a dependency on Hibernate Search automatically.

                                    1 2 Previous Next