Tag: 动作

Struts 2动作方法和struts.convention.result.path不起作用

我有Struts2动作方法和struts.convention.result.path这是我的struts.xml login.jsp 当我运行url “localhost:8080/venus/user/login” 。 它显示错误”HTTP Status 404 – /venus/user/login.jsp” 如果我将login()方法更改为execute()方法,它可以工作。 或者如果我改为/WEB-INF/pages/login.jsp ,它就可以了。 任何人都可以解释和教我如何在xml中使用动作方法与结果路径配置? 非常感谢你!

struts.convention.result.path在Struts2中不起作用

我目前的项目结构如下 WebContent WEB-INF View TestPage.jsp other JSP pages… 我的任务是将所有JSP页面放在WEB-INF文件夹中,并在项目中进行所有相关更改。 WebContent WEB-INF View TestPage.jsp other JSP pages… 所以我必须更新struts.xml中的所有结果标记 /View/TestPage.jsp 至 /WEB_INF/View/TestPage.jsp 在网上搜索之后,我找到了一个插件 – struts convention插件来实现这一点,但它遵循它的命名约定。 我可以覆盖Struts约定插件配置(不遵循其命名约定)吗?我也尝试过,但它没有反映。 我的struts.xml是 /TestPage.jsp 当我跑 localhost:8080/project-name/hello1 它显示错误404.但是如果我在struts.xml中更改结果为 /WEB-INF/View/TestPage.jsp 它工作正常。 我不想对所有结果标签进行更改。如何通过在一个地方进行更改来实现此目的?

使用Struts2在JSP中访问Action类

有没有人知道如何在使用Struts2时轻松访问JSP中的Action类? 虽然我知道通常可以使用Struts标签和OGNL,但实际上我发现它们都令人困惑(显然是由于无知)并且坦率地发现在JSP中维护Java更容易(更不用说它更容易解释为新的众所周知的程序员Java)。 我已经搜索了多年的解决方案,我找到的最好的解决方案是从类中调用静态方法,如下所示: public static BaseAction getCurrentAction(HttpServletRequest request) { OgnlValueStack ognlStack = (OgnlValueStack)request.getAttribute(org.apache.struts2.ServletActionContext.STRUTS_VALUESTACK_KEY); return (BaseAction)ognlStack.getRoot().get(0); } …将在您自己的Action类扩展的BaseAction类中,以便在您的JSP中可以说: 然而,这一切似乎过于复杂,它假设OgnlValueStack的精确顺序 – 必须有更好的方法,非? 非常感谢任何建议!

MVVM中是否允许操作? Android的

如果MVVM完全是关于数据绑定而不能做像view.doThis()那样的东西,否则它是MVP,那么如何调用视图上的动作呢? 假设我有一个有snackbar视图。 View由其ViewModel控制。 这个ViewModel应该如何显示snackbar而不使用snackbar.show() ?

JSF 1.2动作exception和actionListener之间的区别

我注意到了JSF 1.2。 在actionListener方法中抛出exception时,不返回错误页面,但在操作方法中抛出exception时返回错误页面。 这是为什么? 在两种情况下都可以返回错误页面吗?

Java JButton.setAction(…)null的按钮文本

以下代码呈现没有文本的JButton : public abstract class Test { public static void main(String… args) { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException e) { e.printStackTrace(); } SwingUtilities.invokeLater(() -> { JFrame frame = new JFrame(); JPanel panel = new JPanel(); String text = “Invisible”; JButton button = new JButton(text); // blank button rendered […]

Java Swing KeyStrokes:如何使CTRL修饰符工作

在下面的程序中,为什么在按CTRL + a时按下一键打印“你好,世界”不? import java.awt.event.*; import javax.swing.*; public class KeyStrokeTest { public static void main(String[] args) { JPanel panel = new JPanel(); /* add a new action named “foo” to the panel’s action map */ panel.getActionMap().put(“foo”, new AbstractAction() { public void actionPerformed(ActionEvent e) { System.out.println(“hello, world”); } }); /* connect two keystrokes with the newly […]

我可以在Java中的actionPerformed方法中使用switch – case

我想检查ActionEvent e和e.getSource()发生了哪个actionEvent。 我可以使用开关盒吗? public void actionPerformed(ActionEvent e){ switch(e.getSource()){ case radius: double r = validate(radius.getText()); break; case height: double h = validate(height.getText()); break; case out: out.setText(String.valueOf(h*r)); break; } }

拦截器的invocation.invoke()之后没有填充Struts 2动作变量

我的问题是,在使用invocation.invoke从拦截器触发动作的变量后,它们不会被填充。 我所知道的是,在使用拦截器之前,它工作正常(从.jsp我提交了一个表单并调用了一个动作,并填充了每个变量) 拦截器类: public String intercept(ActionInvocation invocation) throws Exception { final ActionContext context = invocation.getInvocationContext(); HttpServletRequest request = (HttpServletRequest) context.get(HTTP_REQUEST); HttpSession session = request.getSession(true); Object user = session.getAttribute(Constants.USER_HANDLE); if (user == null) { String signUp = request.getParameter(Constants.SIGN_UP); if (!StringUtils.isBlank(loginAttempt)) { if (processLoginAttempt(request, session)) { return “login-success”; } } else if (!StringUtils.isBlank(signUp)) { return invocation.invoke(); } […]

鼠标侦听器和动作侦听器之间的区别?

有什么不同? 你什么时候使用鼠标监听器? 还是一个动作听众? 谢谢,麻烦您了!