81,122
社区成员




<!-- DWR -->
<servlet>
<servlet-name>dwr</servlet-name>
<servlet-class>
org.directwebremoting.servlet.DwrServlet
</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>dwr</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
这个web.xml中的配置。。
Java code<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC
"-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN"
" http://directwebremoting.org/schema/dwr20.dtd">
<dwr>
<allow>
<convert match="com.house.system.ssh.project.entity.User"
converter="bean">
</convert>
<create creator="new" javascript="UserBizImpl">
<param name="class"
value="com.house.system.ssh.project.Biz.impl.UserBizImpl" />
</create>
</allow>
</dwr>
dwr.xml配置
Java code
@SuppressWarnings("unchecked")
public boolean existUser(String uname) {
boolean exist=false;
try {
String hql = "from User where uname='" + uname + "'";
Query query = this.getSession().createQuery(hql);
List list=query.list();
if(list!=null && list.size()>=0){
exist=true;
return exist;
}
} catch (RuntimeException e) {
throw e;
}
return exist;
}
UserDaoImpl实现方法
Java code
public boolean existUser(String uname) {
return userDao.existUser(uname);
}
UserBizImpl里调用
为什么老是弹出error错误,在测试String型方法的时候 在dao和Imp层调用可以 ,在Biz和BizImpl就不行了 error错误
换成boolean型的时候 在那个层用都不行测试方法都对的 就是error错误 是不是配置问题啊 急啊
org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowed in read-only mode (FlushMode.NEVER/MANUAL): Turn your Session into FlushMode.COMMIT/AUTO or remove 'readOnly' marker from transaction definition.
<script type='text/javascript' src='/HouseSystem/dwr/interface/UserBizImpl.js'></script>
<script type='text/javascript' src='/HouseSystem/dwr/engine.js'></script>
<script type='text/javascript' src='/HouseSystem/dwr/util.js'></script>
<script type="text/javascript">
function validate()
{
var username = document.getElementById("username").value;
UserDaoImpl.existUser(username,show) ;
}
function show(boolean)
{
if(boolean)
{
$("error").style.visibility = "visible" ;
document.getElementById("username").value="";
}
else
{
$("error").style.visibility = "hidden" ;
}
}
HTTP Status 500 -
--------------------------------------------------------------------------------
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowed in read-only mode (FlushMode.NEVER/MANUAL): Turn your Session into FlushMode.COMMIT/AUTO or remove 'readOnly' marker from transaction definition.
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:535)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:433)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
com.house.system.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:45)
root cause
org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowed in read-only mode (FlushMode.NEVER/MANUAL): Turn your Session into FlushMode.COMMIT/AUTO or remove 'readOnly' marker from transaction definition.
org.springframework.orm.hibernate3.HibernateTemplate.checkWriteOperationAllowed(HibernateTemplate.java:1182)
org.springframework.orm.hibernate3.HibernateTemplate$12.doInHibernate(HibernateTemplate.java:692)
org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:419)
org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374)
org.springframework.orm.hibernate3.HibernateTemplate.save(HibernateTemplate.java:690)
com.house.system.ssh.project.dao.impl.UserDaoImpl.Register(UserDaoImpl.java:99)
com.house.system.ssh.project.biz.impl.UserBizImpl.Register(UserBizImpl.java:36)
com.house.system.ssh.project.action.UserAction.Register(UserAction.java:90)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)
org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
com.house.system.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:45)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.26 logs.