ViewCriteria using CATSEARCH or CONTAINS  possible

Hi,
a couple of our old apps (Struts and old JBO tags, BC4J and Oracle 11g DB) are using Oracle Text indexes (catsearch or contains) for data retrieval. The queries are build dynamically from a number of input fields send to a method in the VO.
We are planing to migrate them to 11g (ADF rich faces and the full ADF stack). I would like to use ViewCriteria in the VOs to handle the build of the queries, but couldn't find a way to use catsearch or contains syntax in ViewCriteria.
Does anybody out here know a way to tweak the framework to build a query like
select employee_id, last_name, fist_name from employees where catsearch(last_name, :bindName, null)>0;
with ViewCriteria?
I'll appreciate any pointer...
Timo
Using Jdev 11.1.1.4.0, Oracle 11g DB, full ADF stack
Edited by: Timo Hahn on 25.03.2011 09:58
bump

OK, after toying with this feature over the weekend, I've come to the conclusion that this will not work. At least not in the current version 11.1.1.4.0.
The principle layout of the view criteria is <attribute><operand><expression>As the link Frank (and Steve) mentioned you can build your own custom operants, but with certain limitations like e.g. named bind variables are not handled by the framework. This is the show stopper for me right now because I like to build an operand like catsearch(<attribute>, <expression>, null)>0 where the <expression> does contain a named bind variable.
When you code the custom operator to return this the bind variable is not bound by the framework resulting in (java.sql.SQLException) Fehlender IN- oder OUT-Parameter at Index:: 1 exception. Even the phrasing of the custom operand needs some tweaking to get you a correct SQL statemant:         <CompOper
          Name="LastName"
          ToDo="1"
          OperDescStrCode="Name_custOp_catsearch"
          Oper="catsearch"
          MinCardinality="0"
          MaxCardinality="0">
          <TransientExpression><![CDATA[
return "is not null AND catsearch(LAST_NAME, :bindName, null)>0"
                        ]]></TransientExpression>
        </CompOper> As you see you need to put a 'is not null and ...' inside the transient expression to get it work, otherwise the resulting SQL will not be valid.
So it looks like I'm in a dead end :-(
@Frank and @Steve: do you know if there is a ER pending for something like this?
CATSEARCH and CONTAINS are not widely used here (just guessing from the # of hits you get if you search the forum), so does it make sense to file one myself?
Timo

Similar Messages

  • How to use embeddable EJB container (Java EE 6 / EJB 3.1) on Mac OS?

    To my understanding, the intent of the embeddable EJB 3.1 container is - among others - to support out-of-container testing. I've created a JUnit test case that uses glassfish embeddable for integration testing of ejb 3.1 Light ejbs. I run the tests using Maven.
    I have one general problem and one problem specific to Mac OS (I'm not able to use the embeddable container at all on Mac OS).
    1. First the general problem: the ejb container does not inject or publish classes that are on the test class-path only:
    src>main>java>MyEjb.class
    src>test>java>MyTestEjb.class
    The test case looks like this:
    public class TestCase1b {
         static EJBContainer container;
         @BeforeClass
         public static void initEjbContainer() {
              container = EJBContainer.createEJBContainer();
              for ( Object property : System.getProperties().keySet() ) {
              System.out.print(property + " : ");
              System.out.println(System.getProperty((String)property));
         @Test
         public void canTestWithTransaction() throws NamingException, NotSupportedException, SystemException {
              Context ctx = container.getContext();
              OrderServiceTesterEjb orderServiceTester = (OrderServiceTesterEjb) ctx
                        .lookup("java:global/classes/OrderServiceTesterEjb");
              Assert.assertNotNull(orderServiceTester.testCreateOrderWithTransaction());
         @AfterClass
         public static void closeEjbContainer() {
              container.close();
    The idea with a test-ejb is to mimic the way I typically perform junit integration testing with Spring: the test database i preloaded with test data. Each test-method of the junit test case starts a transaction, invokes the service, evaluates the state of the database and finally performs a rollback. My idea was to mimic that by creating a test ejb (Stateless, REQUIRES_NEW), that injects the EJB to test, calls the method to test, evaluates the result or db state and finally sets rollbackonly before returning. The problem is that the test case can lookup ejbs in src/main/java, but not the "test" ejbs in src/test/java. My workaround is to include the test-EJBs in src/main/java which I think is not acceptable.
    2. Next the Mac-problem:
    The Mac OS JDK 1.6 contains version 1.0 of javax.annotation (jsr 250). EJBs developed with Java EE 6 depends on version 1.1 of javax.annotation. Specifically, one typically need @Resource(lookup=... and @DataSourceDefinition of javax.annotation.sql which are both missing in the JDK. I can compile my EJBs by adding the javaee-api-6.0.jar library to my classpath. But when running unit tests with maven (as described above), a runtime error is reported, stating that the lookup-property of the @Resource annotation is undefined. This is logical, since the boot classpath should have precedence. So I added javaee-api-6.0.jar to the lib/endorsed directory of the jre. Unfortunetely, this triggers a segmentation fault of the Mac OS JVM when running the test. I have no other workaround than switching to windows. Any help / hints are much appreciated.
    /Johan

    Just as an update, we're soon to release the WLS 11g R1 PS2 update, which will contain WLS 10.3.3 just to confuse things.
    As part of that, we're distributing for the first time, an additional .zip version of WLS to make it easier for developers.
    The zip file distribution has no GUI installer -- it's a simple case of unzip, run a script it provides, then start the server.
    The zip file distribution has been specifically tested on Mac OS X and the WLS config/domain scripts automatically adjust as necessary for the Mac OS X java environment.
    Once the zip file distribution is available, we hope that developing against WLS on Mac OS X (and Windows/Linux) will be an easier task.
    -steve-

  • GroupLayout can only be used with one Container at a time

    Dear all,
    I am a beginner so please don't throw rocks at me...
    I have created two frames with NetBeans. One is the main frame (extends from JPanel) and the other frame I put it to be started when pressing a button from the main frame (the second frame extends from JFrame). Both frames are created using the designer in NetBeans, so the code for creating the GUI is automatically generated by NetBeans, so both frames use the same layout (GroupLayout).
    Here is the code of the button from the main frame to start the second one:
    private void manageCustomersActionPerformed(java.awt.event.ActionEvent evt) {                                                
            // TODO add your handling code here:
            CustomerGUI custGUI1=new CustomerGUI();//CustomerGUI is the second frame
            custGUI1.setVisible(true);
    }When I press this button from the main frame I get this runtime exception: Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: GroupLayout can only be used with one Container at a time. The second frame is not opened.
    How should I handle this?
    What I want to do: I want to have a main frame, from which I can start additional ones (the main frame must be always opened, while the additional ones can be closed after performing certain actions). I read a little about internal frames and I think this can be a solution, but I must edit the existing design...
    Thank you
    With respect,
    Don
    Edited by: don1983p on Dec 16, 2008 2:21 AM

    AndrewThompson64 wrote:
    There are those that maintain that JFrame should never be extended. I am not convinced, but most cases where a JFrame is extended would be better coded as simply configuring the JFrame within the main(). GUI builders such as found in NetBeans seem to extend JFrame as a matter of course.I too am not rigorous or religious about this either, but try to adhere to this as a matter of practicality and convenience, I find that if I don't extend a JComponent but rather use composition rather than inheritance, it's much easier to use objects of my class when programming in Eclipse. For instance in Eclipse (and in most IDEs), if I type my object name and then a period, it will show all of the method's available for me to use on this object. If I subclass JPanel or JFrame, I'll see a gazillion methods most I don't want to see, and thus most are clutter. On the other hand if I use composition, I'll only see a small number of methods and these will be only the methods that I want to see and need to use.

  • Error while integrating OBIEE report with EBS using Rich Content Container

    I am trying to integrate OBIEE report with EBS using Rich Content Container OAF functionality. I have followed the steps mentioned in oracle Note - Embedding Analytics in Oracle E-Business Suite [ID 974422.1]. When i run my page, the container region comes up with the error message - The requested URL /pls/ghrfpkd2/OracleSSWA.Execute was not found on this server. Can someone please help me with some documents on the steps to integrate OBIEE with EBS using Rich Content Container.

    I'm getting the same error on WebSphere 6.1.5. Is there any solution for this?

  • Error: The Java Runtime in use does not contain a suitable JAXP feature

    Hi,
    I'm trying to get Eclipse TPTP to work. One of the steps I need to execute is to run a setConfig.bat file. When I ran it, I got the following error:
    ERROR: The Java Runtime in use does not contain a suitable JAXP feature
    RESOLUTION: Use a JRE which supports the JAXP featureI use Eclipse Europa, and it is using my JDK (actually JRE) 1.6.0_05. That should mean I have JAXP in my JRE (which is confirmed when I search on JAXP from the directory C:\Program Files\Java containing jdk1.6.5_05 and jre1.6.5_05 directories).
    Is there something extra I need to do to let Eclipse and TPTP find my JAXP classes?
    TIA,
    Abel

    Hi,
    Even i am getting the same error but i use JRE 1.5.0_14. please let me know if you happen to resolve this.
    Thanks in Advance,
    Sai

  • How do you use the "Item Containing Start/End Date" in a Calendar?

    Hi
    I want to do a calendar where the days shown will be conditional to a certain interval. Now I though I could achieve that using the Item Containing Start Date of a calendar. But it doesn't seem to work. In the help it says :
    Enter an item in the application which holds the start date of the calendar. The format of the date in this item must be YYYYMMDD.
    This is what I did here
    http://apex.oracle.com/pls/otn/f?p=34530:1::::::
    I have 3 fields. 2 for the Start Date and End Date and 1 for the "Date Item" parameter. Only the latter has an effect on the calendar display, the calendar only displays the month of the "Date Item" (in monthly mode).
    Wether or not I check "Begin at Start of Interval", it doesn't affect the way those fields are affecting the Calendar.
    So, how do we use that "Item Containing Start/End Date" parameter?

    Hello,
    does yout Script work when you begin with ?:
    Start-Process powershell -Verb runAs
    Best regards,
    Stefan
    German Orchestrator Portal ,
    My blog in English

  • This domain name can't be used because it contains a protected word or inappropriate language.

    Dear
    Creating a Microsoft services experience for my domain (fazlic.ba), is showing an error message as below:
    "This domain name can't be used because it contains a protected word or inappropriate language. Please contact support if you feel this is not the case."
    Can somone help in resolving this issue as i need this bit urgent and i am trying for same since last 2 days but with no success
    My domain name is fazlic.ba, which needs to be added as custom domain in domain.live.com
    Thanks

    Hi,
    we cannot provide any solution here because the domain validation is the second step of the process and is automated.
    My advice wouldbe to follow the message guideline and contact the support, they may identify why this domain is refused.
    Hope this helps,
    Fabrice DI GIULIO, http://blog.digiulio.fr
    Technical Solutions Professional, EMEA at AvePoint

  • This domain name can't be used because it contains a protected word or inappropriate language. Please contact support if you feel this is not the case.

    we are unable to domain smippl.com it gives error
    This domain name can't be used because it contains a protected word or inappropriate language. Please contact support if you feel this is not the case.
    It is a real estate company :
    SARLA MADAN INFRASTRUCTURE PROJECTS PRIVATE LIMITED
          Address : "SWAYANG TOWER" (STILT FLOOR),
          Plot No. M-73, Madhusudan Nagar, Unit-IV, Bhubaneswar-751001, Odisha,
          India
    current email : [email protected]
    Domain to setup email in Windows Live outlook express  - smippl.com
    waiting for solution

    Hi,
    I wonder if you are registering domain name here:
    https://domains.live.com/Signup/SignupDomain.aspx?dn=&ss=0&ctkn=&et=0
    If so contact with windows live support:
    https://support.live.com/default.aspx?scrx=1
    We
    are trying to better understand customer views on social support experience, so your participation in this
    interview project would be greatly appreciated if you have time.
    Thanks for helping make community forums a great place.

  • Using databases and container events?

    I'm having trouble finding documents show how one should use databases and listen for container events? I'm using Berkley Java DB. I'll need all my remote object to have access to the database. How do I pass that in? Custom adapters? Also, when Tomcat shuts down I need to close the database, how would this be down? Custom adapters? So I may be answering my own question, but I'm asking cause I really don't see anything in the documentation that points this out. It really looks like I'd be using singletons and factories for this. I could register a Servlet or Servlet Context to listen for Tomcat events, but I figured it couldn't hurt to ask others using Blaze, as I'm very new to it. Thanks.

    So how would you tell Blaze to use this? Is there something you put into the config file? My thoughts on all this is to use PicoContainer to manage all services then create an adapter to inject all resources when creating remote objects. But this seems a little heavy if Blaze can do all this for me. The adapter seems like the injection point to me. Is that not what it's used for? Or is using it like that bad practice under Blaze? I've read all I can find on Blaze, so either it's missing docs, or I'm not finding them all. If I'm missing them, by all means let me know where to go. I don't want to ask questions that are already answered in documents else where.
    On Tue, May 20, 2008 at 10:51 AM, Mete Atamel <
    [email protected]> wrote:
    A new message was posted by Mete Atamel in
    General Discussion --
      Using databases and container events?
    I think it's mainly in JavaDocs but here's a sample I have where I check to make sure the HSQLDB is running as the BlazeDS starts up:
    import java.sql.Connection;
    import java.sql.SQLException;
    import flex.messaging.config.ConfigMap;
    import flex.messaging.services.AbstractBootstrapService;
    public class DatabaseCheckService extends AbstractBootstrapService
        // This is called right before server starts up.
        public void initialize(String id, ConfigMap properties)
            Connection c = null;
            try
                // Check that the database is running...
                c = ConnectionHelper.getConnection();
                // ... if yes return
                return;
            catch (SQLException e)
                System.out.println("DB is not running!");
            finally
                ConnectionHelper.close(c);
    // This is called as server is starting.
        public void start()
            // No-op
    // This is called as server is stopping.
        public void stop()
            // No-op
    View/reply at
    Using databases and container events?
    Replies by email are OK.
    Use the
    unsubscribe form to cancel your email subscription.
    "All that is necessary for the triumph of evil is that good men do nothing." - Edmund Burke

  • What is the exact use of Sequence container

    Hi all,
       I am intermediate in SSIS package,i am not understanding what is the exact use of Sequence container ?
      I am preparing for interview(3 years exp), if experts dont mind can you pls share some tips and questions to clear the interview ?
     pls
    thanks

    Hi SelvakumarSubramaniam,
    This blog delivers a good summary of the benefits we can get by using Sequence Container:
    Easier debugging by allowing you to disable groups of tasks to focus package debugging on one subset of the package control flow.
    Managing multiple tasks in one location by setting properties on a Sequence Container instead of setting properties on the individual tasks.
    Provides scope for variables that a group of related tasks and containers use.
    Create a transaction around all the components inside the container.
    Here are some other good resources:
    http://www.phpring.com/sequence-container-in-ssis/ 
    http://sql-developers.blogspot.com/2010/06/sequence-container-in-ssis.html 
    Regards,
    Mike Yin
    TechNet Community Support

  • Why is it that I'm lacking cpu power when I'm doing high tasking things but when i run a dinky little game it decides to use all the power possible?

    why is it that im lacking cpu power  when I'm doing high tasking things but when i run a dinky little game it decides to use all the power possible? its like when i need it its not there and then when i dont its there?

    Check here
    http://support.apple.com/kb/PH10900http://support.apple.com/kb/PH10900

  • Freeze header row using over overflow container

    hi All,
    I have an issue with my header in the gridlayout element, we are using the overflowcontainer element.
    When there is a scroll bar and user scrolls, the header also scrolls, we want to just scroll the line items and the header should be frozen,
    any suggestion please ?

    Hi Friend,
    You can achieve your requirement by using xhtmlb overflow container.Check the below link.
    [link|Freeze header in BSP page which is using Grid Layout]
    With Regards,
    SHARMILA BRINDHA.M

  • Looking to download trail version of cc App and then install it on personal computer for offline use. Is this possible?

    Looking to download trail version of cc App and then install it on personal computer for offline use. Is this possible?

    yes, Download Adobe Creative Cloud apps | Free Adobe CC trial
    but you must be online to install apps.

  • A friend wants sell and transfer his CS6 Suit (Mac) to me, but I use Win', is crossgrade possible?

    A friend wants sell and transfer his CS6 Suit (Mac) to me because he does not use all of its content, but I use Win', is crossgrade possible?
    Thanks in advance.

    Hi Iscu,
         Once you purchase the Mac version from your Friend, you can go ahead and request for a swap platform to Windows.
    Make sure your friend does a "Transfer of License" through Adobe. Once the "Transfer of License" is complete, the serial number will be registered under your account and you will be the current Owner of the license. Later, you can go ahead and request for a Swap for your product. To know more about the transfer of license, follow the below URL:
    http://helpx.adobe.com/x-productkb/policy-pricing/transfer-product-license.html
    FYI - Swap platform is available only with the current version. Hence if CS7 releases, you need to purchase a Swap platform Upgrade..
    Let us know if you have any further queries.
    Regards,
    Jairaj

  • Create another object using the same container generated by a split...

    Hi SapGears!
    I'm facing a problem about creating an object using a splited container.
    I split the container A in containers A1 and A2 and create alv in A1 and html in A1.
    After that, i need to create a toolbar buttons using the class cl_gui_toolbar in A2 without need to recreate all again.
    I Try to call method free( ) and recreate the object, but the container A2 appears in blank.
    any help will be very nice!!!

    I would try different solution. Split A2 into two new rows B1 and B2. In B1 set your toolbar, in B2 your alv. By default set B1 cell hidden
    "suppress splitter bar
    CALL METHOD gr_splitter_cont->set_row_sash
        EXPORTING
          id    = 1
          type  = gr_splitter_cont->type_movable
          value = gr_splitter_cont->false.
    "show only alv in entire cell
      CALL METHOD gr_splitter_cont->set_row_height( id = 1 height = 1000 ).
    Now when you request for toolbar display only that cell
        CALL METHOD gr_splitter_cont->set_row_height( id = 1 height = 0 ).
    A kind of workaround but you will avoid much troubles.
    Regards
    Marcin

Maybe you are looking for