社区
Web 开发
帖子详情
无法保存session
yjqtd2008
2008-07-29 04:51:54
用Tomcat5.5启动项目操作session时保存值,然后读取却没有值,但是服务器上一切正常这是什么原因啊。。。。。。。。。
...全文
213
16
打赏
收藏
无法保存session
用Tomcat5.5启动项目操作session时保存值,然后读取却没有值,但是服务器上一切正常这是什么原因啊。。。。。。。。。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
phon_oy
2008-07-31
打赏
举报
回复
用debug调试一下看看session的状态
nieliqiang84
2008-07-31
打赏
举报
回复
你把两次的Session ID 打印出来看看,看看是否一致
lyyhsq2
2008-07-31
打赏
举报
回复
服务器能用,代码应该没问题,看下你的数据库连接配置有问题没。
lyyhsq2
2008-07-31
打赏
举报
回复
机子有啥问题。
yjqtd2008
2008-07-29
打赏
举报
回复
我在怀疑是不是我机子的问题但是现在开发过程中不好把所有东西重装,但是自己开发起来很不方便。
yjqtd2008
2008-07-29
打赏
举报
回复
然后再到另外一个地方读取
public ActionForward saveReport(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws BasicException {
LoginSessionServiceImp logSess = new LoginSessionServiceImp(request);
// 获取时间
String time = request.getParameter("selectTime");
String memo = request.getParameter("memo");// 备注
if (memo == null) {
memo = " ";
}
// 获得主报表数椐
String monthcoalremain = request.getParameter("monthcoalremain");// 月初结存
String tdccaccount = request.getParameter("tdccaccount");// 本日耗煤
String tdeoaccount = request.getParameter("tdeoaccount");// 本日进油
String monthoilremain = request.getParameter("monthoilremain");// 油月初结存
String tlaunchstyle = request.getParameter("tlaunchstyle");// 开机方式
String tdailywaste = request.getParameter("tdailywaste");// 本日煤损耗
String toilwaste = request.getParameter("toilwaste");// 本日油损耗
String tdcoaccount = request.getParameter("tdcoaccount");// 本日耗油
//String tdecaccount = request.getParameter("tdecaccount"); // 本日进煤
//String tcoalremainaccount = request.getParameter("tcoalremainaccount"); //煤库存
// 获得火车本日调整数椐
String[] trainData = request.getParameterValues("tdailyAdjust");
String[] trainno = request.getParameterValues("trainno");
// 获取汽车本日调整数据
String[] truckData = request.getParameterValues("adailyAdjust");
String[] autono = request.getParameterValues("autono");
String[] mpmonthcoalremain = request
.getParameterValues("mpmonthcoalremain");// 煤月初结存
String[] mpdecaccount = request.getParameterValues("mpdecaccount");// 本日进煤
String[] mpdccaccount = request.getParameterValues("mpdccaccount");// 本日耗煤
String[] mpdeoaccount = request.getParameterValues("mpdeoaccount");// 本日进油
String[] mpmonthoilremain = request
.getParameterValues("mpmonthoilremain");// 油月初结存
String[] mpdailywaste = request.getParameterValues("mpdailywaste");// 本日损耗
String[] mpdcoaccount = request.getParameterValues("mpdcoaccount");// 本日耗油
String[] storageName = request.getParameterValues("storageName");// 煤场名称
// 获取生成报表的数椐
DailyReportData data = (DailyReportData) request.getSession()
.getAttribute("reportDate");
List<DailyDetailReport> detailReportList = new ArrayList<DailyDetailReport>();
List<DataItem> trainList = null;
List<DataItem> truckList = null;
// /////try catch
try {
trainList = data.getDailyDetailItem().getTrainData().getData();
} catch (java.lang.NullPointerException e) {
trainList = new ArrayList<DataItem>();
}
try {
truckList = data.getDailyDetailItem().getTruckData().getData();
} catch (java.lang.NullPointerException e) {
truckList = new ArrayList<DataItem>();
}
double dec = 0D;
double mec = 0D;
double yec = 0D;
if (trainData != null) {
for (int i = trainData.length - 1; i >= 0; i--) {
double value = 0;
if (!"".equals(trainData[i])) {
value = Double.parseDouble(trainData[i]);
}
DataItem dataItem = trainList.get(Integer.parseInt(trainno[i]));
dataItem.setDailyAdjust(value);
dataItem.setDailyAmount(dataItem.getDailyAmount() + value);
if ("01".equals(time.substring(time.length() - 2))) {
dataItem.setMonthAmount(dataItem.getDailyAmount());
} else {
dataItem.setMonthAmount(dataItem.getMonthAmount() + value);
}
if ("01-01".equals(time.substring(time.length() - 5))) {
dataItem.setYearAmount(dataItem.getDailyAmount());
} else {
dataItem.setYearAmount(dataItem.getYearAmount() + value);
}
dataItem.setMontchSchedule(dataItem.getMontchSchedule());
dec += dataItem.getDailyAmount();
mec += dataItem.getMonthAmount();
yec += dataItem.getYearAmount();
changeDate(trainList, Integer.parseInt(trainno[i]), value, time);
}
}
if (truckData != null) {
for (int i = truckData.length - 1; i >= 0; i--) {
double value = 0;
if (!"".equals(truckData[i])) {
value = Double.parseDouble(truckData[i]);
}
DataItem dataItem = truckList.get(Integer.parseInt(autono[i]));
dataItem.setDailyAdjust(value);
dataItem.setDailyAmount(dataItem.getDailyAmount() + value);
if ("01".equals(time.substring(time.length() - 2))) {
dataItem.setMonthAmount(dataItem.getDailyAmount());
} else {
dataItem.setMonthAmount(dataItem.getMonthAmount() + value);
}
if ("01-01".equals(time.substring(time.length() - 5))) {
dataItem.setYearAmount(dataItem.getDailyAmount());
} else {
dataItem.setYearAmount(dataItem.getYearAmount() + value);
}
dataItem.setMontchSchedule(dataItem.getMontchSchedule());
dec += dataItem.getDailyAmount();
mec += dataItem.getMonthAmount();
yec += dataItem.getYearAmount();
changeDate(truckList, Integer.parseInt(autono[i]), value, time);
}
}
// 分别将火车数椐和汽车数据的form对象封装为持久化对象
Iterator<DataItem> iterator = trainList.iterator();
int order = 0;
int boxnum = 0;
double dadjustaccount = 0;
while (iterator.hasNext()) {
DataItem dataItem = iterator.next();
DailyDetailReport datailReport = new DailyDetailReport();
datailReport.setBelongfactoryid(logSess.getCompanyCode());
datailReport.setBriefname(dataItem.getCaption());
datailReport.setDadjustaccount(NumberFormat
.getDoubleNumberFormat(dataItem.getDailyAdjust()));
datailReport.setDecaccount(NumberFormat
.getDoubleNumberFormat(dataItem.getDailyAmount()));
datailReport.setMeccoalaccount(NumberFormat
.getDoubleNumberFormat(dataItem.getMonthAmount()));
datailReport.setMonthcoalplan(NumberFormat
.getDoubleNumberFormat(dataItem.getMontchSchedule()));
datailReport.setProvideridinbill(dataItem.getKey());
datailReport.setRecordtype(1);
datailReport.setNo(++order);
datailReport.setDataitemtype(dataItem.getType());
datailReport.setYeccaolaccount(dataItem.getYearAmount());
datailReport.setBoxnum(dataItem.getBoxnum());
if(1 == dataItem.getType()){
boxnum += dataItem.getBoxnum();
dadjustaccount += dataItem.getDailyAdjust();
}
detailReportList.add(datailReport);
}
yjqtd2008
2008-07-29
打赏
举报
回复
public ActionForward showAdd(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
LoginSessionServiceImp logSess = new LoginSessionServiceImp(request);
Map map = systemConfig.getMapBySessionFactoryId(logSess
.getCompanyCode(), request);
List providerLevel = (List) map.get("reportProviderLevel");
if ((providerLevel != null) && (!providerLevel.isEmpty())) {
dailyreportService
.setProviderLevel(providerLevel.get(0).toString());
}
map = systemConfig.getMapBySessionFactoryId(logSess.getCompanyCode(),
request);
List specialShortID = (List) map.get("specialProvider");
if ((specialShortID != null) && (!specialShortID.isEmpty())) {
dailyreportService.setSpecialShortID(specialShortID.get(0)
.toString());
}
String time = request.getParameter("time");
if ("".equals(time)) {
// SimpleDateFormat formater = new SimpleDateFormat("yyyy-MM-dd");
time = DateUtils.getDateString(new Date(), "yyyy-MM-dd");
}
request.getSession().setAttribute("selectTime", time);
List dailyList = dailyreportService.getList(logSess.getCompanyCode(),
java.sql.Date.valueOf(DateUtils.getLastDay(time)));
List doubleList = dailyreportService.getList(logSess.getCompanyCode(),
java.sql.Date.valueOf(time));
boolean testhasDate = dailyreportService.isBeforeTimeHasDate(time,
logSess.getCompanyCode());
if (dailyList.isEmpty() && testhasDate && doubleList.isEmpty()) {
ActionMessages messages = new ActionMessages();
messages.add(ActionMessages.GLOBAL_MESSAGE,
new ActionMessage("messages.delete", DateUtils
.getLastDay(time)
+ " 还没有生成日报!"));
this.saveMessages(request, messages);
return mapping.findForward("nodata");
}
DailyReportData data = dailyreportService.getReportData(logSess
.getCompanyCode(), time);
map = systemConfig.getMapBySessionFactoryId(logSess.getCompanyCode(),
request);
List typeList = (List) map.get("transmitmodel");
if ((typeList == null) || (typeList.isEmpty())) {
ActionMessages messages = new ActionMessages();
messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage(
"messages.delete", "你还没有配置系统参数!"));
this.saveMessages(request, messages);
return mapping.findForward("nodata");
}
String type = typeList.get(0).toString();
DailyMasterReport listReport = data.getDailyMasterItem();
DailyMasterReport report = new DailyMasterReport();
if (listReport == null)
listReport = new DailyMasterReport();
try {
BeanUtils.copyProperties(report, listReport);
} catch (Exception e) {
report = listReport;
e.printStackTrace();
}
if (time.endsWith("-01")) {
report.setMccaccount(0);
report.setMcoaccount(0);
report.setMeoaccount(0);
report.setMeccoalaccount(0);
report.setMonthcoalremain(report.getCoalremainaccount());
report.setMonthoilremain(report.getOilremainaccount());
}
if (time.endsWith("-01-01")) {
report.setYccaccount(0);
report.setYcoaccount(0);
report.setYeccaolaccount(0);
report.setYeoaccount(0);
}
report.setMemo(" ");
int state = 0;
if ("truck".equals(type)) {
state = 2; // 汽车
} else if ("truckandtrain".equals(type)) {
state = 3; // 汽车与火车
} else {
state = 1; // 火车
}
// report.setEnteredboxesnumber(dailyreportService.getBoxSize(logSess
// .getCompanyCode(), time, state));
report.setEnteredboxesnumber(getBoxes(data));
report.setMEnteredboxesnumber(dailyreportService.getMEenteredBoxCount(
logSess.getCompanyCode(), time, state));
double oc = innfurnacereportService.getCoalnetWeight(time, logSess
.getCompanyCode());
report.setDccaccount(oc);
// 月计划数重写修正 added by pq 2008-03-05
double monplan = 0.00;
double dweight = 0.0;
double mweight = 0.0;
double yweight = 0.0;
List<DataItem> ltra = data.getDailyDetailItem().getTrainData()
.getData();
for (int i = 0; i < ltra.size(); i++) {
DataItem di = (DataItem) ltra.get(i);
if (di.getType() == 3)
{
monplan += di.getMontchSchedule();
dweight += di.getDailyAmount();
mweight += di.getMonthAmount();
yweight += di.getYearAmount();
}
}
List<DataItem> ltru = data.getDailyDetailItem().getTruckData()
.getData();
for (int i = 0; i < ltru.size(); i++) {
DataItem di = (DataItem) ltru.get(i);
if (di.getType() == 3)
{
monplan += di.getMontchSchedule();
dweight += di.getDailyAmount();
mweight += di.getMonthAmount();
yweight += di.getYearAmount();
}
}
report.setMonthcoalplan(monplan);
report.setDecaccount(NumberFormat
.getDoubleNumberFormat(dweight));
report.setMeccoalaccount(NumberFormat
.getDoubleNumberFormat(mweight));
report.setYeccaolaccount(NumberFormat
.getDoubleNumberFormat(yweight));
// 日报主表数据来源 取快报数据。
FuelexpressService fuelService = (FuelexpressService) SpringContextUtil
.getBean("fuelexpressService");
FuelexpressqueryForm queryForm = new FuelexpressqueryForm();
queryForm.setBelongfactoryid(logSess.getCompanyCode());
queryForm.setReportdate(time);
Fuelexpress fuelexpress = fuelService
.getDailyreportByFuelexpress(queryForm);
if (fuelexpress != null) {
// 本日进煤
//report.setDecaccount(fuelexpress.getBalanceweight());
// 本日耗煤
report.setDccaccount(fuelexpress.getDispend());
// 煤库存
//report.setCoalremainaccount(fuelexpress.getStockpile());
}else {
// //本日进煤
// report.setDecaccount(0);
// //本日耗煤
// report.setDccaccount(0);
}
data.setDailyMasterItem(report);
request.setAttribute("data", data);
request.setAttribute("action",
"dailyreportActionWithForm.do?action=saveReport");
request.getSession().setAttribute("reportDate", data);
//是否为月末
request.setAttribute("islastmonth", DateUtils
.isLastMonthOfDay(DateUtils.stringToDate(time, "yyyy-MM-dd")));
if ("truck".equals(type)) {
data.getDailyDetailItem().setType(2);
return mapping.findForward("showSingleAdd");
} else if ("train".equals(type)) {
data.getDailyDetailItem().setType(1);
return mapping.findForward("showSingleAdd");
} else if ("truckandtrain".equals(type)) {
data.getDailyDetailItem().setType(3);
return mapping.findForward("showdbAdd");
} else {
ActionMessages messages = new ActionMessages();
messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage(
"messages.delete", "你还没有配置系统参数!"));
this.saveMessages(request, messages);
return mapping.findForward("nodata");
}
}
JudeaWolf
2008-07-29
打赏
举报
回复
能不能提供更多的代码?
yjqtd2008
2008-07-29
打赏
举报
回复
而且有时候我的表单内值太多的话,表单读取都失败。
yjqtd2008
2008-07-29
打赏
举报
回复
request.getSession().setAttribute("reportDate", data); 保存Session
然后在 request.getSession().getAttribute("reportDate"); 读取
在服务器上是正常的,但是在我自己的机器上get出来是NULL
zidasine
2008-07-29
打赏
举报
回复
[Quote=引用 1 楼 diy8187 的回复:]
如果你没有修改session的时间,应该不会保存不了,
我觉得应该是你没有保存正确或没有取出正确.
[/Quote]
贴下相应的代码
JudeaWolf
2008-07-29
打赏
举报
回复
什么情况,代码看看
yunmoon
2008-07-29
打赏
举报
回复
session.setAttribute("UserName","超级用户");
楼主确定set没错?
天外流星
2008-07-29
打赏
举报
回复
可以把你代码看下,
天外流星
2008-07-29
打赏
举报
回复
如果你没有修改session的时间,应该不会保存不了,
我觉得应该是你没有保存正确或没有取出正确.
Java分布式
Session
的解决方案
这时候就需要通过
保存
用户状态,将用户的请求关联起来。
Session
管理正是这一问题的解决方案。 本次课程将会带着去学习
session
分布式的问题解决方案,如果对视频中有什么地方不懂或者不理解的话,请直接联系我哦
阿里云服务器
session
默认设置下
无法
保存
session
阿里云服务器
session
默认设置下
无法
保存
session
,默认设置是在/temp下,查看此目录权限可写可读,并没有权限问题。 尝试修改php.ini的
session
.save_paht='/xxxx',并创建此目录,设置权限,发现还是
无法
保存
session
,目录下也没有生存文件。 尝试在代码中修改
session
保存
目录到项目目录中: $ROOT_PATH_CUSTOM = str_re...
服务器
无法
保存
SESSION
解决方案
网站一直运行很好,今天突然后台
无法
登录,提示
session
无法
保存
,在网上找了很多方法一直没有圆满解决这个问题,测试了很久,最终找到了解决方法。 问题:Warning: Unknown: Failed to write
session
data (files). Please verify that the current setting of
session
.save_path is corr
linux下TP6
无法
保存
session
的坑
linux下TP6
无法
保存
session
的坑tp6
session
无效 的坑 - 沅来是澧 - 博客园Linux下
Session
无法
保存
- 简书
PHp中
session
无法
存值_php
session
无法
保存
怎么办
php
session
无法
保存
的解决办法:1、手动通过URL传值、隐藏表单传递
session
id;2、用文件、数据库等形式
保存
【
session
_id】,在跨页过程中手动调用。php
session
无法
保存
的解决办法:使用phpinfo查看
session
信息,找出
session
的
保存
路径,然后给其设置写入的权限即可如果
无法
解决可以参考下面现在我们来抛开cookie使用
session
,主要途径有三条...
Web 开发
81,092
社区成员
341,717
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章