Update of /cvsroot/swixat/swixat/src/main/java/org/swixat/framework/action In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv29205/src/main/java/org/swixat/framework/action Modified Files: Tag: B0_5_5 HandleClassMethodAction.java OutputViewAction.java RefreshViewAction.java XPathAction.java Log Message: Use XPathUtil.applyXPath in all swixat project, this permit to intercept jxpath exception and log real exception. Very useful to debug application. Index: HandleClassMethodAction.java =================================================================== RCS file: /cvsroot/swixat/swixat/src/main/java/org/swixat/framework/action/Attic/HandleClassMethodAction.java,v retrieving revision 1.1.2.5 retrieving revision 1.1.2.6 diff -C2 -d -r1.1.2.5 -r1.1.2.6 *** HandleClassMethodAction.java 1 Sep 2006 13:32:57 -0000 1.1.2.5 --- HandleClassMethodAction.java 20 Sep 2006 12:51:35 -0000 1.1.2.6 *************** *** 263,267 **** // find in DataSource. If argument found is not type compatible with // argument wanted by method, we try to convert the argument ! JXPathContext xpath = JXPathContext.newContext(frame.getXmlEngine().getSharedContext(), null); xpath.getVariables().declareVariable("e", currentContext.getArgument()); xpath.getVariables().declareVariable("_arg", currentContext.getArgument()); --- 263,267 ---- // find in DataSource. If argument found is not type compatible with // argument wanted by method, we try to convert the argument ! JXPathContext xpath = XPathUtil.newContext(frame.getXmlEngine().getSharedContext(), null); xpath.getVariables().declareVariable("e", currentContext.getArgument()); xpath.getVariables().declareVariable("_arg", currentContext.getArgument()); *************** *** 274,278 **** argObject = arg.substring(1, arg.length() - 1); } else if(!"".equals(arg)){ ! argObject = xpath.getValue(arg); } --- 274,278 ---- argObject = arg.substring(1, arg.length() - 1); } else if(!"".equals(arg)){ ! argObject = XPathUtil.applyXPath(arg, null, xpath, false); } Index: OutputViewAction.java =================================================================== RCS file: /cvsroot/swixat/swixat/src/main/java/org/swixat/framework/action/Attic/OutputViewAction.java,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** OutputViewAction.java 17 Mar 2006 15:30:34 -0000 1.1.2.1 --- OutputViewAction.java 20 Sep 2006 12:51:35 -0000 1.1.2.2 *************** *** 33,36 **** --- 33,37 ---- import org.swixat.framework.AbstractFrame; import org.swixat.framework.OutputView; + import org.swixat.framework.XPathUtil; import org.swixat.model.Context; import org.swixat.model.GenericContext; *************** *** 82,87 **** int i = 1; while(i<ctxArgs.length) { ! String key = (String)xpath.getValue(ctxArgs[i++], String.class); ! Object value = xpath.getValue(ctxArgs[i++]); ctx.setData(key, value); } --- 83,88 ---- int i = 1; while(i<ctxArgs.length) { ! String key = (String)XPathUtil.applyXPath(ctxArgs[i++], null, xpath, false, String.class); ! Object value = XPathUtil.applyXPath(ctxArgs[i++], null, xpath, false); ctx.setData(key, value); } Index: XPathAction.java =================================================================== RCS file: /cvsroot/swixat/swixat/src/main/java/org/swixat/framework/action/Attic/XPathAction.java,v retrieving revision 1.1.2.2 retrieving revision 1.1.2.3 diff -C2 -d -r1.1.2.2 -r1.1.2.3 *** XPathAction.java 17 Mar 2006 21:04:33 -0000 1.1.2.2 --- XPathAction.java 20 Sep 2006 12:51:35 -0000 1.1.2.3 *************** *** 32,35 **** --- 32,36 ---- import org.apache.commons.jxpath.JXPathContext; import org.swixat.framework.AbstractFrame; + import org.swixat.framework.XPathUtil; import org.swixat.model.Context; *************** *** 63,67 **** engine.getVariables().declareVariable("_arg", arg); ! Object result = engine.getValue(command); if (result == null) { --- 64,68 ---- engine.getVariables().declareVariable("_arg", arg); ! Object result = XPathUtil.applyXPath(command, null, engine, false); if (result == null) { Index: RefreshViewAction.java =================================================================== RCS file: /cvsroot/swixat/swixat/src/main/java/org/swixat/framework/action/Attic/RefreshViewAction.java,v retrieving revision 1.1.2.2 retrieving revision 1.1.2.3 diff -C2 -d -r1.1.2.2 -r1.1.2.3 *** RefreshViewAction.java 17 Mar 2006 21:04:33 -0000 1.1.2.2 --- RefreshViewAction.java 20 Sep 2006 12:51:35 -0000 1.1.2.3 *************** *** 32,38 **** --- 32,40 ---- import java.awt.Component; + import org.apache.commons.jxpath.JXPathContext; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.swixat.framework.AbstractFrame; + import org.swixat.framework.XPathUtil; import org.swixat.util.SwiXUtil; *************** *** 83,87 **** // remove string marker " if(!"".equals(comp)){ ! Object o = frame.getXmlEngine().getSharedContext().getValue(comp); if (o instanceof Component) { frame.getXmlEngine().refreshView((Component)o); --- 85,90 ---- // remove string marker " if(!"".equals(comp)){ ! JXPathContext context = frame.getXmlEngine().getSharedContext(); ! Object o = XPathUtil.applyXPath(comp, null, context, false); if (o instanceof Component) { frame.getXmlEngine().refreshView((Component)o); |