nutz简单登陆注解@Ok("json")在IE浏览器下报文件下载的问题

最近,在研究nutz,非常好用的框架!我花了一天的时间,按照wendal的视频做了一个简单的登陆功能,在类MainModule中的注解@Ok(“raw”)时候,访问http://localhost:8080/nutz/usr/ping方法返回正常,

我的工程目录

MainModule类

运行后的结果

A

但是我在使用json注解时候,就出现

注意,这是IE浏览器,IE浏览器,IE浏览器,重要事情说三遍!


这是为什么呢,而且控制台也报错

这是类UserModule

package net.zosef.nutz.module;

import java.util.Date;

import javax.servlet.http.HttpSession;

import net.zosef.pojo.User;

import org.nutz.dao.Cnd;

import org.nutz.dao.Dao;

import org.nutz.ioc.loader.annotation.Inject;

import org.nutz.ioc.loader.annotation.IocBean;

import org.nutz.lang.Strings;

import org.nutz.log.Log;

import org.nutz.log.Logs;

import org.nutz.mvc.annotation.At;

import org.nutz.mvc.annotation.Attr;

import org.nutz.mvc.annotation.Param;

@IocBean

@At("/usr")

public class UserModule {

private static final Log log = Logs.get();

@Inject

private Dao dao;

@At

public boolean login(@Param("name")String name,

@Param("passwd")String passwd,

HttpSession session){

if (Strings.isBlank(name) || Strings.isBlank(passwd)){

return false;

}

name = name.trim().intern();

passwd = passwd.trim().intern();

User user = dao.fetch(User.class, Cnd.where("name","=",name).and("passwd","=",passwd));

if (user == null)

return false;

session.setAttribute("me", user);

return true;

}

@At

public void logout(HttpSession session){

session.invalidate();

}

@At

public User me(@Attr("me")User user) {

return user;

}

@At("/ping")

public Object ping(){

log.debug("log==="+dao);

System.out.println("ping 方法");

return new Date();

}

}

最后,在nutz社区请教了一下wendal大神,大神秒回复,在类MainSetup的init方法开始的地方,加入一句 UTF8JsonView.CT= "text/plain";,再重新访问方法,一切OK!

package net.zosef.nutz;

import net.zosef.pojo.User;

import org.nutz.dao.Dao;

import org.nutz.dao.entity.annotation.Table;

import org.nutz.log.Log;

import org.nutz.log.Logs;

import org.nutz.mvc.NutConfig;

import org.nutz.mvc.Setup;

import org.nutz.mvc.view.UTF8JsonView;

import org.nutz.resource.Scans;

public class MainSetup implements Setup {

private static final Log log = Logs.get();

public void init(NutConfig config) {

log.debug("config ioc== " + config.getIoc());

UTF8JsonView.CT = "text/plain";

Dao dao = config.getIoc().get(Dao.class);

for (Class<?> klass : Scans.me().scanPackage("net.zosef.pojo")){

if (null != klass.getAnnotation(Table.class))

dao.create(klass, false);

}

if (dao.count(User.class) == 0) {

User admin = new User();

admin.setName("admin");

admin.setPasswd("123456");

dao.insert(admin);

}

}

public void destroy(NutConfig config) {

}

}

猜你喜欢

转载自zhangshufei8001.iteye.com/blog/2377248