[code="java"]
Ext.Ajax.request({
url : '/jlyw/notice/gd_notice!queryNoticeList.action', //连不上啊,这里
method : 'post',
async : false,
success : function(result,request) {
var msg = result.responseText;
alert("dwdwdw"); //没反应啊
Ext.get("gdnotice").dom.innerHTML = '
![]() | 滚动公告: | '+msg+' |
}
})
[/code]
[code="java"]
package com.jlyw.actions.notice;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import com.bestnet.base.action.BaseAction;
import com.jlyw.services.notice.noticeService;
import com.jlyw.vos.notice.noticeVo;
@SuppressWarnings("serial")
public class Gd_noticeAction extends BaseAction{
@Autowired
private noticeService service;
private noticeVo noticevo;
@SuppressWarnings("unchecked")
public void queryNoticeList() throws IOException, ParseException {
List list = service.getFirstList();
StringBuffer sb = new StringBuffer();
noticeVo backnotice = null;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
for (int i = 0; i < list.size(); i++) {
backnotice = (noticeVo) list.get(i);
sb.append("<li>");
long dif = sdf.parse(sdf.format(new Date())).getTime() - sdf.parse(backnotice.getCreateTime()).getTime();
if (dif/(1000*3600*24) > 7) {
sb.append("<a href='../../adm/backnoticefirst!getById.action?id=" + backnotice.getId() + "' target='_blank'>" + "【" + backnotice.getNoticeType() + "】" + backnotice.getTitle() + "</a> " + backnotice.getCreateTime().substring(0, 10));
} else {
sb.append("<a href='../../adm/backnoticefirst!getById.action?id=" + backnotice.getId() + "' target='_blank'>" + "【" + backnotice.getNoticeType() + "】" + backnotice.getTitle() + "</a> "
+ backnotice.getCreateTime().substring(0, 10) + "<img src='../../Images/new.gif'></img>");
}
sb.append("</li>");
}
write("<ui>" + sb.toString() + "</ui>");
}
public noticeService getService() {
return service;
}
public void setService(noticeService service) {
this.service = service;
}
public noticeVo getNoticevo() {
return noticevo;
}
public void setNoticevo(noticeVo noticevo) {
this.noticevo = noticevo;
}
}
[/code]
出错也不是坏事,能知道更多框架的使用和实现。如果一开始什么都对了,可能对于为什么这么整合,哪里是关键点,都不会知道。
先用firebug看看,是否有请求发起,如果有请求的响应信息如何!
这个和extjs本身没关系,请求已经发送了,只是你服务器端代码有问题。看看:
[code="java"]
org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.jlyw.services.notice.noticeService com.jlyw.actions.notice.Gd_noticeAction.service; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [com.jlyw.services.notice.noticeService] is defined: Unsatisfied dependency of type [class com.jlyw.services.notice.noticeService]: expected at least 1 matching bean
[/code]
这里已经说明了问题,你注入的noticeService ,没有唯一的bean对应。检查一下你的xml配置,看看noticeService是怎么定义的,是否有多个。
你用的struts2吧
你的noticeAction 这个action 配置的有问题,不能实例化这个action,你配置贴出来看看
noticeAction 在spring和struts的配置呢
那估计就是因为这个action找不到吧。
你的noticeService 的代码看看,组件声明是否正确。
你的private NoticeDAO dao; 这个有get set么,要加上的。
noticeService 的DAO是怎么注入的,没看到呢?
解决了? 是我刚说的问题么?
[quote]dao 没有注入,没有get.set [/quote]嘿嘿,那就是我说的咯。
[quote]
dao 没有注入,没有get.set
[/quote]
采用“@Autowired”或者“@Resource”甚至“@Inject”,都可以直接在Field或setter上注入,如果在Field注入,可以不需要getter,setter。
没事儿的 慢慢来就可以了,都是一个过程。