RSS Forums RSS

binding properties

Please support our Java advertiser: Programming Forums
Thread Solved
Reply
Posts: 207
Reputation: ceyesuma is an unknown quantity at this point 
Solved Threads: 0
ceyesuma ceyesuma is offline Offline
Posting Whiz in Training

binding properties

  #1  
May 12th, 2008
I have the tutorial running with a entire database displayed.
I am working with the tutorial at:
http://www.netbeans.org/kb/articles/mysql.html

The above tutorial creates a jDesktopAPP. with components bound to the table.

I am trying to add a button (basically).

I am in the process of understanding binding.

the program loads with <list> which is the entire database.

I created a new query (createQuery())

I would like to clear that list and repoulate it with a getResultSet()

As far as binding goes I have never acessed propertiest to set them or accessed properties

to work with them.

Could some one give me some idea where to start?

I have coded in a combobox,textfield,button(@Action)and actionPerformed()
Right now everything compiles yet the query is not created.

Can someone tell me some basic procedures I must follow to utilize persistence?

All this code does is add the above mentioned components and I added an error message to

try to put my question into context.
Thank for your time.



private void searchJComboBox1ItemStateChanged(java.awt.event.ItemEvent evt) {               

                                   
    setSearchItem((String) searchJComboBox1.getSelectedItem());
    if (searchJComboBox1.getSelectedItem().equals("by Artist")) {
        String holdQuery = searchJComboBox1.getSelectedItem().toString();
        setSearchInput(holdQuery);

    //searchJTextField1.setText(getSearchQuery());
    }
    if (searchJComboBox1.getSelectedItem().equals("by Song")) {
        String holdQuery = searchJComboBox1.getSelectedItem().toString();
        setSearchInput(holdQuery);

    //searchJTextField1.setText(getSearchQuery());
    }
}                                                 

private void searchJButton1ActionPerformed(java.awt.event.ActionEvent evt) {                

                               
    if (searchJComboBox1.getSelectedItem().equals("by Artist")) {
        String like = searchJTextField1.getText();
        setSearchQueryString("SELECT c FROM content c WHERE c.artist LIKE :like");
        searchQuery1 = entityManager.createQuery(getSearchQueryString());
        searchQuery1.setParameter("like", "%" + searchJTextField1.getText() + "%");
        List<Content> List = searchQuery1.getResultList();
    }
     if (searchJComboBox1.getSelectedItem().equals("by Song")) {
        String like = searchJTextField1.getText();
        setSearchQueryString("SELECT c FROM content c WHERE c.song LIKE :like");
        searchQuery1 = entityManager.createQuery(getSearchQueryString());
        searchQuery1.setParameter("like", "%" + searchJTextField1.getText() + "%");
        List<Content> List = searchQuery1.getResultList();
    }
}                                              

    @Action
    public Task searchSplash() {


        return new SearchSplashTask(getApplication());
    }

    private class SearchSplashTask extends Task {

        SearchSplashTask(org.jdesktop.application.Application app) {
            super(app);
        }

        @SuppressWarnings("unchecked")
        @Override
        protected Void doInBackground() {
            try {
                setProgress(0, 0, 4);
                setMessage("Rolling back the current changes...");
                setProgress(1, 0, 4);
                entityManager.getTransaction().rollback();
                Thread.sleep(1000L); // remove for real app

                setProgress(2, 0, 4);

                setMessage("Starting a new transaction...");
                entityManager.getTransaction().begin();
                Thread.sleep(500L); // remove for real app

                setProgress(3, 0, 4);

                setMessage("Fetching new data...");
                java.util.Collection data = searchQuery1.getResultList();


                for (Object entity : data) {
                    entityManager.refresh(entity);
                }

                Thread.sleep(1300L); // remove for real app

                setProgress(4, 0, 4);

                Thread.sleep(150L); // remove for real app

                list.clear();
            //list.addAll(search);
            } catch (InterruptedException ignore) {
            }
            return null;
        }

        @Override
        protected void finished() {
            setMessage("Done.");
            setSaveNeeded(false);
        }
    }

 entityManager = java.beans.Beans.isDesignTime() ? null : 

javax.persistence.Persistence.createEntityManagerFactory

("splashbookdbPU").createEntityManager();
        org.jdesktop.application.ResourceMap resourceMap = 

org.jdesktop.application.Application.getInstance

(splashtemplateda.SplashTemplateDAApp.class).getContext().getResourceMap

(SplashTemplateDAView.class);
        query = java.beans.Beans.isDesignTime() ? null : entityManager.createQuery

(resourceMap.getString("query.query")); // NOI18N
        list = java.beans.Beans.isDesignTime() ? java.util.Collections.emptyList() : 

org.jdesktop.observablecollections.ObservableCollections.observableList

(query.getResultList());
        searchQuery1 = java.beans.Beans.isDesignTime() ? null : entityManager.createQuery

(null);





init:
deps-jar:
Copying 1 file to 

C:\Users\depot\Documents\ceyesuma\program_cache\in_progress\Enterprise\splashbookinprogress

\target\SplashTemplateDA\build\classes
compile:
run:
[TopLink Info]: 2008.05.12 05:49:17.417--ServerSession(25094328)--TopLink, version: Oracle 

TopLink Essentials - 2.0.1 (Build b09d-fcs (12/06/2007))
[TopLink Info]: 2008.05.12 05:49:19.438--ServerSession(25094328)--

file:/C:/Users/depot/Documents/ceyesuma/program_cache/in_progress/Enterprise/splashbookinpr

ogress/target/SplashTemplateDA/build/classes/-splashbookdbPU login successful
May 12, 2008 5:49:20 PM org.jdesktop.application.Application$1 run
SEVERE: Application class splashtemplateda.SplashTemplateDAApp failed to launch
java.lang.IllegalArgumentException: An exception occured while creating a query in 

EntityManager
        at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery

(EntityManagerImpl.java:209)
        at splashtemplateda.SplashTemplateDAView.initComponents

(SplashTemplateDAView.java:360)
        at splashtemplateda.SplashTemplateDAView.<init>(SplashTemplateDAView.java:42)
        at splashtemplateda.SplashTemplateDAApp.startup(SplashTemplateDAApp.java:19)
        at org.jdesktop.application.Application$1.run(Application.java:171)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
        at java.awt.EventDispatchThread.pumpOneEventForFilters

(EventDispatchThread.java:273)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy

(EventDispatchThread.java:173)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
Caused by: Exception [TOPLINK-8002] (Oracle TopLink Essentials - 2.0.1 (Build b09d-fcs 

(12/06/2007))): oracle.toplink.essentials.exceptions.EJBQLException
Exception Description: General Problem parsing the query [null]. The parser returned the 

following [null].
Internal Exception: java.lang.NullPointerException
        at oracle.toplink.essentials.exceptions.EJBQLException.generalParsingException

(EJBQLException.java:140)
        at oracle.toplink.essentials.internal.parsing.ejbql.EJBQLParser.buildParserFor

(EJBQLParser.java:155)
        at oracle.toplink.essentials.internal.parsing.ejbql.EJBQLParser.buildParseTree

(EJBQLParser.java:126)
        at 

oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery

(EJBQueryImpl.java:215)
        at 

oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery

(EJBQueryImpl.java:189)
        at 

oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery

(EJBQueryImpl.java:153)
        at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.<init>

(EJBQueryImpl.java:114)
        at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.<init>

(EJBQueryImpl.java:99)
        at oracle.toplink.essentials.internal.ejb.cmp3.EJBQueryImpl.<init>

(EJBQueryImpl.java:86)
        at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery

(EntityManagerImpl.java:204)
        ... 12 more
Caused by: java.lang.NullPointerException
        at java.io.StringReader.<init>(StringReader.java:33)
        at 

oracle.toplink.essentials.internal.parsing.ejbql.antlr273.EJBQLParserBuilder.buildParser

(EJBQLParserBuilder.java:61)
        at oracle.toplink.essentials.internal.parsing.ejbql.EJBQLParser.buildParserFor

(EJBQLParser.java:149)
        ... 20 more
Exception in thread "AWT-EventQueue-0" java.lang.Error: Application class 

splashtemplateda.SplashTemplateDAApp failed to launch
        at org.jdesktop.application.Application$1.run(Application.java:177)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
        at java.awt.EventDispatchThread.pumpOneEventForFilters

(EventDispatchThread.java:273)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy

(EventDispatchThread.java:173)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
Caused by: java.lang.IllegalArgumentException: An exception occured while creating a query 

in EntityManager
        at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery

(EntityManagerImpl.java:209)
        at splashtemplateda.SplashTemplateDAView.initComponents

(SplashTemplateDAView.java:360)
        at splashtemplateda.SplashTemplateDAView.<init>(SplashTemplateDAView.java:42)
        at splashtemplateda.SplashTemplateDAApp.startup(SplashTemplateDAApp.java:19)
        at org.jdesktop.application.Application$1.run(Application.java:171)
        ... 8 more
Caused by: Exception [TOPLINK-8002] (Oracle TopLink Essentials - 2.0.1 (Build b09d-fcs 

(12/06/2007))): oracle.toplink.essentials.exceptions.EJBQLException
Exception Description: General Problem parsing the query [null]. The parser returned the 

following [null].
Internal Exception: java.lang.NullPointerException
        at oracle.toplink.essentials.exceptions.EJBQLException.generalParsingException

(EJBQLException.java:140)
        at oracle.toplink.essentials.internal.parsing.ejbql.EJBQLParser.buildParserFor

(EJBQLParser.java:155)
        at oracle.toplink.essentials.internal.parsing.ejbql.EJBQLParser.buildParseTree

(EJBQLParser.java:126)
        at 

oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery

(EJBQueryImpl.java:215)
        at 

oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery

(EJBQueryImpl.java:189)
        at 

oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery

(EJBQueryImpl.java:153)
        at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.<init>

(EJBQueryImpl.java:114)
        at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.<init>

(EJBQueryImpl.java:99)
        at oracle.toplink.essentials.internal.ejb.cmp3.EJBQueryImpl.<init>

(EJBQueryImpl.java:86)
        at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery

(EntityManagerImpl.java:204)
        ... 12 more
Caused by: java.lang.NullPointerException
        at java.io.StringReader.<init>(StringReader.java:33)
        at 

oracle.toplink.essentials.internal.parsing.ejbql.antlr273.EJBQLParserBuilder.buildParser

(EJBQLParserBuilder.java:61)
        at oracle.toplink.essentials.internal.parsing.ejbql.EJBQLParser.buildParserFor

(EJBQLParser.java:149)
        ... 20 more
BUILD SUCCESSFUL (total time: 11 seconds)
AddThis Social Bookmark Button
Reply With Quote  
Posts: 207
Reputation: ceyesuma is an unknown quantity at this point 
Solved Threads: 0
ceyesuma ceyesuma is offline Offline
Posting Whiz in Training

Re: binding properties

  #2  
May 12th, 2008
I think I need some of this:

 try {
                entityManager.getTransaction().commit();
                entityManager.getTransaction().begin();
            } catch (RollbackException rex) {
                rex.printStackTrace();
                entityManager.getTransaction().begin();
                List<splashtemplateda.Content> merged = new ArrayList<splashtemplateda.Content>(list.size());
                for (splashtemplateda.Content c : list) {
                    merged.add(entityManager.merge(c));
                }
                list.clear();
                list.addAll(merged);
            }
            return null;
        }
If I mastertable.clear()
is it possible that
where merge could hold the getResultSet()
Reply With Quote  
Posts: 207
Reputation: ceyesuma is an unknown quantity at this point 
Solved Threads: 0
ceyesuma ceyesuma is offline Offline
Posting Whiz in Training

Re: binding properties

  #3  
May 13th, 2008
Scratch this one. As usual I made it much more complicated than it had to be. The solution was much easier than I made it
Reply With Quote  
Reply

Only community members can participate in forum threads. You must register or log in to contribute.



Similar Threads
Other Threads in the Java Forum
Views: 829 | Replies: 2 | Currently Viewing: 1 (0 members and 1 guests)

 

Thread Tools Display Modes
Forums | Blogs | Tutorials | Code Snippets | Whitepapers | RSS Feeds | Advertising
All times are GMT -4. The time now is 9:58 pm.
Newsletter Archive - Sitemap - Privacy Statement - Acceptable Use Policy - Contact Us
Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2008 DaniWeb® LLC