I assume:-<br><br>1) You changed the URL in the change-set to suit where your Guvnor is running?<br><br>The stack trace suggests <a href="http://localhost:8080/guvnor/org.drools.guvnor.Guvnor/package/mortgages/LATEST">http://localhost:8080/guvnor/org.drools.guvnor.Guvnor/package/mortgages/LATEST</a> could not be found.<br>
<br>2) You built the mortgages package in Guvnor?<br><br>I&#39;ve been running this very same example numerous times in the past few days, both on Tomcat and JBoss AS7.1.1 so am confident it works.<br><br>On 14 September 2012 16:56, richard <span dir="ltr">&lt;<a href="mailto:rx74me@yahoo.com" target="_blank">rx74me@yahoo.com</a>&gt;</span> wrote:<br>
<div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Guvnor - Version 5.4.0.Final<br>
\drools-examples\drools-examples-brms\mortgage-example<br>
<br>
I get this error.<br>
<br>
java.lang.RuntimeException: KnowledgeAgent exception while trying to<br>
deserialize KnowledgeDefinitionsPackage<br>
        at<br>
org.drools.agent.impl.KnowledgeAgentImpl.createPackageFromResource(KnowledgeAgentImpl.java:776)<br>
        at<br>
org.drools.agent.impl.KnowledgeAgentImpl.addResourcesToKnowledgeBase(KnowledgeAgentImpl.java:1071)<br>
        at<br>
org.drools.agent.impl.KnowledgeAgentImpl.rebuildResources(KnowledgeAgentImpl.java:824)<br>
        at<br>
org.drools.agent.impl.KnowledgeAgentImpl.buildKnowledgeBase(KnowledgeAgentImpl.java:673)<br>
        at<br>
org.drools.agent.impl.KnowledgeAgentImpl.applyChangeSet(KnowledgeAgentImpl.java:203)<br>
        at<br>
org.drools.agent.impl.KnowledgeAgentImpl.applyChangeSet(KnowledgeAgentImpl.java:182)<br>
        at<br>
org.drools.guvnor.examples.mortgage.client.MortgageClientExample.readKnowledgeBase(MortgageClientExample.java:92)<br>
        at<br>
org.drools.guvnor.examples.mortgage.client.MortgageClientExample.main(MortgageClientExample.java:49)<br>
Caused by: java.io.FileNotFoundException:<br>
<a href="http://localhost:8080/guvnor/org.drools.guvnor.Guvnor/package/mortgages/LATEST" target="_blank">http://localhost:8080/guvnor/org.drools.guvnor.Guvnor/package/mortgages/LATEST</a><br>
        at<br>
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1434)<br>
        at org.drools.io.impl.UrlResource.grabStream(UrlResource.java:210)<br>
        at org.drools.io.impl.UrlResource.getInputStream(UrlResource.java:146)<br>
        at<br>
org.drools.agent.impl.KnowledgeAgentImpl.createPackageFromResource(KnowledgeAgentImpl.java:748)<br>
        ... 7 more<br>
<div class="im">Exception in thread &quot;main&quot; java.lang.NullPointerException<br>
</div>        at java.util.AbstractCollection.addAll(AbstractCollection.java:303)<br>
        at<br>
org.drools.agent.impl.KnowledgeAgentImpl.addResourcesToKnowledgeBase(KnowledgeAgentImpl.java:1077)<br>
        at<br>
org.drools.agent.impl.KnowledgeAgentImpl.rebuildResources(KnowledgeAgentImpl.java:824)<br>
        at<br>
org.drools.agent.impl.KnowledgeAgentImpl.buildKnowledgeBase(KnowledgeAgentImpl.java:673)<br>
        at<br>
org.drools.agent.impl.KnowledgeAgentImpl.applyChangeSet(KnowledgeAgentImpl.java:203)<br>
        at<br>
org.drools.agent.impl.KnowledgeAgentImpl.applyChangeSet(KnowledgeAgentImpl.java:182)<br>
        at<br>
org.drools.guvnor.examples.mortgage.client.MortgageClientExample.readKnowledgeBase(MortgageClientExample.java:92)<br>
        at<br>
org.drools.guvnor.examples.mortgage.client.MortgageClientExample.main(MortgageClientExample.java:49)<br>
<br>
/*<br>
 * Copyright 2011 JBoss Inc<br>
 *<br>
 * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);<br>
 * you may not use this file except in compliance with the License.<br>
 * You may obtain a copy of the License at<br>
 *<br>
 *      <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">http://www.apache.org/licenses/LICENSE-2.0</a><br>
 *<br>
 * Unless required by applicable law or agreed to in writing, software<br>
 * distributed under the License is distributed on an &quot;AS IS&quot; BASIS,<br>
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.<br>
 * See the License for the specific language governing permissions and<br>
 * limitations under the License.<br>
 */<br>
<br>
package org.drools.guvnor.examples.mortgage.client;<br>
<br>
import javax.swing.JOptionPane;<br>
<br>
import org.drools.KnowledgeBase;<br>
import org.drools.agent.KnowledgeAgent;<br>
import org.drools.agent.KnowledgeAgentFactory;<br>
import org.drools.definition.type.FactType;<br>
import org.drools.io.Resource;<br>
import org.drools.io.ResourceFactory;<br>
import org.drools.runtime.StatefulKnowledgeSession;<br>
<br>
public class MortgageClientExample {<br>
<br>
    /**<br>
     * Entry point demonstrating use of KnowledgeAgent and changesets<br>
retrieving<br>
     * a rule package from a running instance of Guvnor.<br>
     * @param args<br>
     */<br>
    public static void main(String[] args) {<br>
<br>
        JOptionPane.showMessageDialog(null, &quot;This example makes a few<br>
assumptions:\n&quot; +<br>
                &quot;- Start the app server on localhost on port 8080.\n&quot; +<br>
                &quot;- Rename the guvnor war to guvnor.war and deploy it to the<br>
app server.\n&quot; +<br>
                &quot;- Surf to Guvnor and log in.\n&quot; +<br>
                &quot;- In the menu Administration, Import/Export, import<br>
/exported-repositories/mortgage-sample-repository.xml\n&quot; +<br>
                &quot;- Refresh the browser, open menu Package, click Rebuild all<br>
packages.\n&quot; +<br>
                &quot;Click OK when this is done.&quot;, &quot;Preparation&quot;,<br>
JOptionPane.INFORMATION_MESSAGE);<br>
<br>
        StatefulKnowledgeSession ksession = null;<br>
        try {<br>
            // load up the knowledge base<br>
            KnowledgeBase kbase = readKnowledgeBase();<br>
<br>
            // Dynamic fact creation as the model was declared in the DRL<br>
            FactType appType = kbase.getFactType(&quot;mortgages&quot;,<br>
&quot;LoanApplication&quot;);<br>
            Object application = appType.newInstance();<br>
            appType.set(application, &quot;amount&quot;, 25000);<br>
            appType.set(application, &quot;deposit&quot;, 1500);<br>
            appType.set(application, &quot;lengthYears&quot;, 20);<br>
<br>
            FactType incomeType = kbase.getFactType(&quot;mortgages&quot;,<br>
&quot;IncomeSource&quot;);<br>
            Object income = incomeType.newInstance();<br>
            incomeType.set(income, &quot;type&quot;, &quot;Job&quot;);<br>
            incomeType.set(income, &quot;amount&quot;, 65000);<br>
<br>
            // Invoke the magic<br>
            ksession = kbase.newStatefulKnowledgeSession();<br>
            ksession.insert(application);<br>
            ksession.insert(income);<br>
            ksession.fireAllRules();<br>
<br>
            // Voila!<br>
            String message = &quot;The loan application is now:\n&quot; + application;<br>
            System.out.println(message);<br>
            JOptionPane.showMessageDialog(null, message, &quot;Result&quot;,<br>
JOptionPane.INFORMATION_MESSAGE);<br>
        } catch (InstantiationException e) {<br>
            e.printStackTrace();<br>
        } catch (IllegalAccessException e) {<br>
            e.printStackTrace();<br>
        } finally {<br>
            if (ksession != null) {<br>
                ksession.dispose();<br>
            }<br>
        }<br>
    }<br>
<br>
    /**<br>
     * Load KnowledgeBase using KnowledgeAgent configured with accompanying<br>
changeset xml<br>
     * @return A KnowledgeBase<br>
     */<br>
    private static KnowledgeBase readKnowledgeBase() {<br>
        KnowledgeAgent kagent =<br>
KnowledgeAgentFactory.newKnowledgeAgent(&quot;MortgageAgent&quot;);<br>
        Resource changeset = ResourceFactory.newClassPathResource(<br>
<br>
&quot;org/drools/guvnor/examples/mortgage/mortgage-changeset.xml&quot;);<br>
        kagent.applyChangeSet(changeset);<br>
        KnowledgeBase kbase = kagent.getKnowledgeBase();<br>
        kagent.dispose();<br>
        return kbase;<br>
    }<br>
<br>
}<br>
<br>
<br>
<br>
<br>
--<br>
View this message in context: <a href="http://drools.46999.n3.nabble.com/Guvnor-example-how-to-access-rules-in-database-instead-sample-drl-file-tp4019713p4019795.html" target="_blank">http://drools.46999.n3.nabble.com/Guvnor-example-how-to-access-rules-in-database-instead-sample-drl-file-tp4019713p4019795.html</a><br>

<div class="HOEnZb"><div class="h5">Sent from the Drools: User forum mailing list archive at Nabble.com.<br>
_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
</div></div></blockquote></div><br>