案例

今天在跟着nutz框架教程去配置demo时,发现访问URL找不到入口函数,出现了Search mapping for path=/user/count : NOT Action match 异常,据nutz文档介绍,找不到方法, 一般是@At写错或者UserModule的package写错,导致映射不到或者根本没找到这个类,于是我从这个两个方面入手,最后还是出现404

package com.evanshare.module;

import org.nutz.dao.Dao;
import org.nutz.ioc.loader.annotation.Inject;
import org.nutz.ioc.loader.annotation.IocBean;
import org.nutz.mvc.annotation.At;
import org.nutz.mvc.annotation.Fail;
import org.nutz.mvc.annotation.Ok; import com.evanshare.bean.User; @IocBean
@At("/user/")
@Ok("json")
@Fail("http:500")
public class UserModule {
@Inject
protected Dao dao; @At("count")
public int count(){
return dao.count(User.class);
} }
package com.evanshare.main;

import org.nutz.mvc.annotation.IocBy;
import org.nutz.mvc.annotation.Modules;
import org.nutz.mvc.annotation.SetupBy;
import org.nutz.mvc.ioc.provider.ComboIocProvider; import com.evanshare.module.UserModule; @SetupBy(value=MainSetup.class)
@IocBy(type=ComboIocProvider.class,args={"*js","config/ioc/","*anno","com.evanshare","*tx"})
@Modules(scanPackage=true)
public class MainModule { }

项目结构如下:

解决方案

1.后来我尝试修改MainModule上的@Modules注解,指定入口函数,结果可以访问,由此可见该问题是因为扫包有问题,导致之前根本没有加载到UserModule.class

@SetupBy(value=MainSetup.class)
@IocBy(type=ComboIocProvider.class,args={"*js","config/ioc/","*anno","com.evanshare","*tx"})
@Modules(UserModule.class)
public class MainModule { }

2.把MainModule迁移到com.evanshare目录下,那么com.evanshare以及它的子包都会被扫描,对应的类也会被加载


使用nutz框架,找不到入口函数,访问Url报404的更多相关文章

  1. jQuery框架 的四个入口函数

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  2. 背景建模技术(三):背景减法库(BGS Library)的基本框架与入口函数main()的功能

    背景减法库(BGS Library = background subtraction library)包含了37种背景建模算法,也是目前国际上关于背景建模技术研究最全也最权威的资料.本文将更加详细的介 ...

  3. Qt Windows下链接子系统与入口函数(终结版)(可同时存在main和WinMain函数)

    Qt Windows下链接子系统与入口函数(终结版) 转载自:http://blog.csdn.net/dbzhang800/article/details/6358996 能力所限,本讨论仅局限于M ...

  4. 1.2. chromium源代码分析 - chromiumframe - 入口函数

    ChromiumFrame的入口函数在main.cpp中,打开main.cpp.中包含3个类和_tWinMain函数._tWinMain就是我们要找的入口函数.我做了部分注释: int APIENTR ...

  5. jQuery的文件引入、入口函数以及js对象和jquery对象之间的互相转换

    JavaScript与jquery的区别 JavaScript是一门编程语言,用来编写客户端浏览器脚本. jQuery是javascript的一个库,包含多个可重用的函数,用来辅助简化javascri ...

  6. Linux内核(12) - 子系统的初始化之那些入口函数

    内核选项的解析完成之后,各个子系统的初始化即进入第二部分—入口函数的调用.通常USB.PCI这样的子系统都会有一个名为subsys_initcall的入口,如果你选择它们作为研究内核的切入点,那么就请 ...

  7. jquery入口函数的测试

    /*编写一个自定义的jquery框架*/ (function (window,undefined) { var njquery=function (selector ,) { return new j ...

  8. [C#] 了解过入口函数 Main() 吗?带你用批处理玩转 Main 函数

    了解过入口函数 Main() 吗?带你用批处理玩转 Main 函数 目录 简介 特点 方法的参数 方法的返回值 与批处理交互的一个示例 简介 我们知道,新建一个控制台应用程序的时候,IDE 会同时创建 ...

  9. Xcode:Foundation框架找不到,或者是自动提示出现问题

    问题描述:Foundation框架找不到,或者是自动提示出现问题 之前的操作:手贱,不少心把编译器里面的源码改了 处理办法:清理缓存 缓存位置:点击桌面后,选择系统菜单栏:前往—电脑—硬盘—用户—ap ...

随机推荐

  1. 0017 CSS 三大特性:层叠性、继承性、优先级

    目标: 理解 能说出css样式冲突采取的原则 能说出那些常见的样式会有继承 应用 能写出CSS优先级的算法 能会计算常见选择器的叠加值 5.1 CSS层叠性 概念: 所谓层叠性是指多种CSS样式的叠加 ...

  2. sqlyong到期后怎么办

    Sqlyog作为一款可视化的数据库管理工具,各种方便我就不说了,但是未经汉化或者绿色过的软件存在30天的生命期,到期后我们就不可以使用了,要摸卸载重装,我们还可以去修改注册表,来延长它的生命期,具体步 ...

  3. [工具] Git版本管理(二)(分支)

    一.分支 1.git中如何保存版本 在我们以往使用文件来进行版本控制的时候,都是将上一个版本复制一份,然后在其基础上进行修改. 但在git中,git只保存当前版本和上一个版本之间的差异,这样可以节省存 ...

  4. promethues安装

    prometheus 1. 下载安装 下载安装:https://github.com/prometheus/prometheus/releases/tag/v2.9.2 wget https://gi ...

  5. 1089 狼人杀-简单版 (20 分)C语言

    以下文字摘自<灵机一动·好玩的数学>:"狼人杀"游戏分为狼人.好人两大阵营.在一局"狼人杀"游戏中,1 号玩家说:"2 号是狼人" ...

  6. antDeaign-form-getFieldDecorator 使用注意事项

    2020-01-06 antDeaign-form-getFieldDecorator 使用注意事项 一.使用getFieldDecorator之前,必须先使用 Form.create({ })(Fo ...

  7. webpack 实时编译typescript与scss

    webpack.config.js const path = require('path'); const CopyWebpackPlugin = require('copy-webpack-plug ...

  8. mui选择器和软键盘冲突解决

    只需要让此节点失焦即可: onfocus="this.blur();"

  9. HTTP,来一个详细的学习。

    HTTP 认识 HTTP 首先你听的最多的应该就是 HTTP 是一种 超文本传输协议(Hypertext Transfer Protocol),这你一定能说出来,但是这样还不够,假如你是大厂面试官,这 ...

  10. 【Java基础总结】数据库编程

    MySQL数据库查询 import java.sql.*; public class JdbcDemo1{ public static void main(String[] args){ try{ / ...