彻底解决警告: No configuration found for the specified action

本文介绍了解决Struts2框架中表单提交时控制台出现警告的方法。重点在于正确配置<s:form>标签的命名空间(namespace)及action属性,并区分传统HTML表单与Struts2标签的不同用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近学习struts2 中时候控制台老是出现该警告错误。

我的客户端代码如下 (代码1):

struts.xml中的配置代码如下 (代码2):

 

在网上搜索了下,搜索网络给出的答案几乎都说把<s:form  action="/admin/login method="post"  >中的login后加上.action后缀了,做了测试,问题仍然没有解决。

 

通过我观察发现有两个地方需要修改,首先<s: form>表单中需要加入命名空间参数namespace,和struts.xml中配置一致。其次,<s:form action=xxx> 中直接写action映射的名字,比如我的xml中是login,则这里直接写login即可,不需要画蛇添足加上.action后缀或者其他的前置路路径,所以修改后的客户端文件配置为 代码(3):

当然,如果你不是使用的struts2的标签,而是使用的传统的html代码,则表单的action属性必须加上完整的路径和后缀也就是说,必须改成如下代码:

 

你如上指定后,当浏览器给出如上的请求/admin/login.action ,struts2框架将首先在sturts.xml中查找 /admin 名称空间,如果找到了(比如我这里显然有这个名称空间),则执行login.action,如果没有找到,会到默认的名称空间中查找,如果默认的也没有,则提示错误,没有映射该action.

 

 

备注:

本文转载自:http://www.javaeye.com/topic/575148

 

rjh@rjh-Legion-Y7000-IRX9:~$ sudo chrt 10 bash [sudo] rjh 的密码: root@rjh-Legion-Y7000-IRX9:/home/rjh# cd catkin_ws root@rjh-Legion-Y7000-IRX9:/home/rjh/catkin_ws# source devel/setup.bash root@rjh-Legion-Y7000-IRX9:/home/rjh/catkin_ws# roslaunch elfin_robot_bringup elfin_ros_control.launch ... logging to /root/.ros/log/26502f3c-62ba-11f0-8430-fb5811965425/roslaunch-rjh-Legion-Y7000-IRX9-4179.log Checking log directory for disk usage. This may take a while. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB. started roslaunch server http://rjh-Legion-Y7000-IRX9:34493/ SUMMARY ======== PARAMETERS * /elfin_arm_controller/action_monitor_rate: 10 * /elfin_arm_controller/constraints/goal_time: 0.6 * /elfin_arm_controller/constraints/stopped_velocity_tolerance: 0.1 * /elfin_arm_controller/joints: ['elfin_joint1', ... * /elfin_arm_controller/state_publish_rate: 25 * /elfin_arm_controller/stop_trajectory_duration: 0.05 * /elfin_arm_controller/type: position_controll... * /elfin_ros_control/elfin/axis_position_factors: [131072, 131072, ... * /elfin_ros_control/elfin/axis_torque_factors: [2536.224, 2536.2... * /elfin_ros_control/elfin/count_zeros: [10392149, 114135... * /elfin_ros_control/elfin/joint_names: ['elfin_joint2', ... * /elfin_ros_control/elfin/reduction_ratios: [101, 101, 101, 1... * /elfin_ros_control/elfin/slave_no: [1, 2, 3] * /elfin_ros_control/elfin_ethernet_name: enxf8e43be2c806 * /joint_state_controller/joints: ['elfin_joint1', ... * /joint_state_controller/publish_rate: 50 * /joint_state_controller/type: joint_state_contr... * /rosdistro: noetic * /rosversion: 1.17.3 NODES / elfin_arm_controller_spawner (controller_manager/controller_manager) elfin_joint_controller_spawner (controller_manager/controller_manager) elfin_ros_control (elfin_ros_control/elfin_hardware_interface) ROS_MASTER_URI=http://localhost:11311 process[elfin_ros_control-1]: started with pid [4231] process[elfin_joint_controller_spawner-2]: started with pid [4232] process[elfin_arm_controller_spawner-3]: started with pid [4233] Initializing etherCAT master SOEM found and configured 3 slaves SOEM IOMap size: 384 Finished configuration successfully recognizing joint positions, please wait a few minutes ... ... The voltage of slave 3 is: 48.301918V. [WARN] [1752721350.031541438]: recognizePose phase1 failed while pose recognition in slave 3, channel 1 The voltage of slave 1 is: 48.539201V. [WARN] [1752721350.042707511]: recognizePose phase1 failed while pose recognition in slave 1, channel 1 The voltage of slave 2 is: 48.435390V. [WARN] [1752721350.116324490]: recognizePose phase1 failed while pose recognition in slave 2, channel 1 [INFO] [1752721350.123945958]: positions are recognized automatically Loaded 'elfin_arm_controller' [INFO] [1752721350.475878958]: Joints parameter specified, publishing specified joints in desired order. Loaded 'joint_state_controller' Started ['joint_state_controller'] successfully [elfin_arm_controller_spawner-3] process has finished cleanly log file: /root/.ros/log/26502f3c-62ba-11f0-8430-fb5811965425/elfin_arm_controller_spawner-3*.log [elfin_joint_controller_spawner-2] process has finished cleanly log file: /root/.ros/log/26502f3c-62ba-11f0-8430-fb5811965425/elfin_joint_controller_spawner-2*.log Failed to read from ret:0, slave_no:4, index:0x6001, subidx:0x01 Failed to read from ret:0, slave_no:4, index:0x7001, subidx:0x01 rjh@rjh-Legion-Y7000-IRX9:~/catkin_ws$ roslaunch elfin_basic_api elfin_basic_api.launch ... logging to /home/rjh/.ros/log/26502f3c-62ba-11f0-8430-fb5811965425/roslaunch-rjh-Legion-Y7000-IRX9-5148.log Checking log directory for disk usage. This may take a while. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB. started roslaunch server http://rjh-Legion-Y7000-IRX9:40751/ SUMMARY ======== PARAMETERS * /elfin_basic_api/octomap_resolution: 0.1 * /rosdistro: noetic * /rosversion: 1.17.3 NODES / elfin_basic_api (elfin_basic_api/elfin_basic_api_node) elfin_gui (elfin_basic_api/elfin_gui.py) ROS_MASTER_URI=http://localhost:11311 process[elfin_basic_api-1]: started with pid [5200] process[elfin_gui-2]: started with pid [5201] [INFO] [1752721529.688475482]: Loading robot model 'elfin5'... [INFO] [1752721529.688876405]: No root/virtual joint specified in SRDF. Assuming fixed joint [WARN] [1752721529.946238642]: IK plugin for group 'elfin_arm' relies on deprecated API. Please implement initialize(RobotModel, ...). [INFO] [1752721529.947269409]: IK Using joint elfin_link1 -3.14 3.14 [INFO] [1752721529.947281856]: IK Using joint elfin_link2 -2.35 2.35 [INFO] [1752721529.947288023]: IK Using joint elfin_link3 -2.61 2.61 [INFO] [1752721529.947292380]: IK Using joint elfin_link4 -3.14 3.14 [INFO] [1752721529.947297802]: IK Using joint elfin_link5 -2.56 2.56 [INFO] [1752721529.947301917]: IK Using joint elfin_link6 -3.14 3.14 [INFO] [1752721529.947308671]: Looking in common namespaces for param name: elfin_arm/position_only_ik [INFO] [1752721529.947716105]: Looking in common namespaces for param name: elfin_arm/solve_type [INFO] [1752721529.948068494]: Using solve type Speed [INFO] [1752721530.264556136]: Loading robot model 'elfin5'... [INFO] [1752721530.264810423]: No root/virtual joint specified in SRDF. Assuming fixed joint [WARN] [1752721530.495684411]: IK plugin for group 'elfin_arm' relies on deprecated API. Please implement initialize(RobotModel, ...). [INFO] [1752721530.497156629]: IK Using joint elfin_link1 -3.14 3.14 [INFO] [1752721530.497179966]: IK Using joint elfin_link2 -2.35 2.35 [INFO] [1752721530.497185712]: IK Using joint elfin_link3 -2.61 2.61 [INFO] [1752721530.497191200]: IK Using joint elfin_link4 -3.14 3.14 [INFO] [1752721530.497196378]: IK Using joint elfin_link5 -2.56 2.56 [INFO] [1752721530.497201236]: IK Using joint elfin_link6 -3.14 3.14 [INFO] [1752721530.497208263]: Looking in common namespaces for param name: elfin_arm/position_only_ik [INFO] [1752721530.498114765]: Looking in common namespaces for param name: elfin_arm/solve_type [INFO] [1752721530.498724410]: Using solve type Speed [INFO] [1752721531.021208287]: Ready to take commands for planning group elfin_arm. [INFO] [1752721531.294994673]: Loading robot model 'elfin5'... [INFO] [1752721531.295013267]: No root/virtual joint specified in SRDF. Assuming fixed joint [WARN] [1752721531.496140760]: IK plugin for group 'elfin_arm' relies on deprecated API. Please implement initialize(RobotModel, ...). [INFO] [1752721531.498108863]: IK Using joint elfin_link1 -3.14 3.14 [INFO] [1752721531.498123597]: IK Using joint elfin_link2 -2.35 2.35 [INFO] [1752721531.498129693]: IK Using joint elfin_link3 -2.61 2.61 [INFO] [1752721531.498134908]: IK Using joint elfin_link4 -3.14 3.14 [INFO] [1752721531.498140359]: IK Using joint elfin_link5 -2.56 2.56 [INFO] [1752721531.498144824]: IK Using joint elfin_link6 -3.14 3.14 [INFO] [1752721531.498149704]: Looking in common namespaces for param name: elfin_arm/position_only_ik [INFO] [1752721531.498780865]: Looking in common namespaces for param name: elfin_arm/solve_type [INFO] [1752721531.499309872]: Using solve type Speed [INFO] [1752721531.519259723]: Ready to take commands for planning group elfin_arm. [INFO] [1752721532.042548619]: Starting planning scene monitor [INFO] [1752721532.043202235]: Listening to '/planning_scene' [INFO] [1752721532.044296324]: Listening to '/attached_collision_object' for attached collision objects [INFO] [1752721532.044308055]: Starting world geometry update monitor for collision objects, attached objects, octomap updates. [INFO] [1752721532.044810705]: Listening to '/collision_object' [INFO] [1752721532.045350412]: Listening to '/planning_scene_world' for planning scene world geometry [WARN] [1752721532.045472964]: Target frame "world" specified but no TF instance (buffer) specified. No transforms will be applied to received data. [INFO] [1752721532.045575570]: No 3D sensor plugin(s) defined for octomap updates Waiting for service /elfin_basic_api/set_parameters... ^C[elfin_gui-2] killing on exit [elfin_basic_api-1] killing on exit shutting down processing monitor... ... shutting down processing monitor complete done 如何解决
最新发布
07-18
Last login: Wed May 28 22:57:11 on ttys000 /Users/wangxuguang/.zshrc:3: no such file or directory: /usr/local/bin/brew /Users/wangxuguang/.zshrc:export:3: not valid in this context: wangxuguang@MacBookPro ~ % pipx install enex2notion zsh: command not found: pipx wangxuguang@MacBookPro ~ % pip Usage: pip <command> [options] Commands: install Install packages. lock Generate a lock file. download Download packages. uninstall Uninstall packages. freeze Output installed packages in requirements format. inspect Inspect the python environment. list List installed packages. show Show information about installed packages. check Verify installed packages have compatible dependencies. config Manage local and global configuration. search Search PyPI for packages. cache Inspect and manage pip's wheel cache. index Inspect information available from package indexes. wheel Build wheels from your requirements. hash Compute hashes of package archives. completion A helper command used for command completion. debug Show information useful for debugging. help Show help for commands. General Options: -h, --help Show help. --debug Let unhandled exceptions propagate outside the main subroutine, instead of logging them to stderr. --isolated Run pip in an isolated mode, ignoring environment variables and user configuration. --require-virtualenv Allow pip to only run in a virtual environment; exit with an error otherwise. --python <python> Run pip with the specified Python interpreter. -v, --verbose Give more output. Option is additive, and can be used up to 3 times. -V, --version Show version and exit. -q, --quiet Give less output. Option is additive, and can be used up to 3 times (corresponding to WARNING, ERROR, and CRITICAL logging levels). --log <path> Path to a verbose appending log. --no-input Disable prompting for input. --keyring-provider <keyring_provider> Enable the credential lookup via the keyring library if user input is allowed. Specify which mechanism to use [auto, disabled, import, subprocess]. (default: auto) --proxy <proxy> Specify a proxy in the form scheme://[user:passwd@]proxy.server:port. --retries <retries> Maximum attempts to establish a new HTTP connection. (default: 5) --timeout <sec> Set the socket timeout (default 15 seconds). --exists-action <action> Default action when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup, (a)bort. --trusted-host <hostname> Mark this host or host:port pair as trusted, even though it does not have valid or any HTTPS. --cert <path> Path to PEM-encoded CA certificate bundle. If provided, overrides the default. See 'SSL Certificate Verification' in pip documentation for more information. --client-cert <path> Path to SSL client certificate, a single file containing the private key and the certificate in PEM format. --cache-dir <dir> Store the cache data in <dir>. --no-cache-dir Disable the cache. --disable-pip-version-check Don't periodically check PyPI to determine whether a new version of pip is available for download. Implied with --no-index. --no-color Suppress colored output. --use-feature <feature> Enable new functionality, that may be backward incompatible. --use-deprecated <feature> Enable deprecated functionality, that will be removed in the future. --resume-retries <resume_retries> Maximum attempts to resume or restart an incomplete download. (default: 0) wangxuguang@MacBookPro ~ % pip3 install enex2notion error: externally-managed-environment × This environment is externally managed ╰─> To install Python packages system-wide, try brew install xyz, where xyz is the package you are trying to install. If you wish to install a Python library that isn't in Homebrew, use a virtual environment: python3 -m venv path/to/venv source path/to/venv/bin/activate python3 -m pip install xyz If you wish to install a Python application that isn't in Homebrew, it may be easiest to use 'pipx install xyz', which will manage a virtual environment for you. You can install pipx with brew install pipx You may restore the old behavior of pip by passing the '--break-system-packages' flag to pip, or by adding 'break-system-packages = true' to your pip.conf file. The latter will permanently disable this error. If you disable this error, we STRONGLY recommend that you additionally pass the '--user' flag to pip, or set 'user = true' in your pip.conf file. Failure to do this can result in a broken Homebrew installation. Read more about this behavior here: <https://peps.python.org/pep-0668/> note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages. hint: See PEP 668 for the detailed specification. wangxuguang@MacBookPro ~ %
05-29
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值