I have exception in my project, i don't know how i can correct this exception???
Code:14.02.2012 20:48:15 org.apache.catalina.core.StandardWrapperValve invoke SEVERE: Allocate exception for servlet springapp org.springframework.beans.NotWritablePropertyException: Invalid property 'factory' of bean class [springapp.dao.lmpl.ClientIpDAOlmpl]: Bean property 'factory' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
ClientIpDAOlmpl
Code:public class ClientIpDAOlmpl implements ClientIpDAO{ private SessionFactory factory=null; public SessionFactory getFactory() { return factory; } public void setFactory(SessionFactory factory) { this.factory = factory; } public void addClientIP(ClientIP id)throws SQLException{ Session session = null; try{ session = factory.getCurrentSession(); session.beginTransaction(); session.save(id); session.getTransaction().commit(); }catch(Exception ex){ System.out.println("Error in addClientIP" + ex.getMessage()); }finally{ if(session != null && session.isOpen()){ session.close(); } } } public boolean authenticationClient(String ip, String alias, String pass)throws SQLException{ Session session = null; boolean b = false; ClientIP client; try{ session = factory.getCurrentSession(); session.beginTransaction(); client = (ClientIP)session.get(ClientIP.class,ip); session.getTransaction().commit(); if(client.getClientAlias().equals(alias) && client.getClientPass().equals(pass)){ b = true; } else b = false; }catch(Exception ex){ System.out.println("Error in auntificClient" + ex.getMessage()); }finally{ if(session != null && session.isOpen()){ session.close(); } } return b; } public void deleteClientIP(ClientIP id) throws SQLException{ Session session = null; try{ session = factory.openSession(); session.beginTransaction(); session.delete(id); session.getTransaction().commit(); }catch(Exception ex){ System.out.println("Error in deleteClientIP" + ex.getMessage()); }finally{ if(session != null && session.isOpen()){ session.close(); } } } }Code:<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location" value="/WEB-INF/jdbc.properties" /> </bean> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${jdbc.driverClassName}" /> <property name="url" value="${jdbc.databaseurl}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> </bean> <bean id="mySessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> <property name="mappingResources"> <list> <value>springapp/hibernate_logic/ClientIP.hbm.xml</value> <value>springapp/hibernate_logic/StartProcess.hbm.xml</value> <value>springapp/hibernate_logic/BlockedProcess.hbm.xml</value> </list> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">${jdbc.dialect}</prop> <prop key="hibernate.show_sql">true</prop> </props> </property> <property name="dataSource"> <ref bean="dataSource"/> </property> </bean> <bean id="myClientDAO" class="springapp.dao.lmpl.ClientIpDAOlmpl"> <property name="factory" ref="mySessionFactory" /> </bean> <bean name="/mainNew.htm" class="springapp.web.ClientIpController"> <property name="clientDAO" ref="myClientDAO" /> </bean> <!-- the application context definition for the springapp DispatcherServlet --> <bean id="productManager" class="springapp.service.SimpleProductManager"> <property name="products"> <list> <ref bean="product1"/> <ref bean="product2"/> <ref bean="product3"/> </list> </property> </bean> <bean id="product1" class="springapp.domain.Product"> <property name="description" value="Lamp"/> <property name="price" value="5.75"/> </bean> <bean id="product2" class="springapp.domain.Product"> <property name="description" value="Table"/> <property name="price" value="75.25"/> </bean> <bean id="product3" class="springapp.domain.Product"> <property name="description" value="Chair"/> <property name="price" value="22.79"/> </bean> <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource"> <property name="basename" value="messages"/> </bean> <bean name="/hello.htm" class="springapp.web.InventoryController"> <property name="productManager" ref="productManager"/> </bean> <bean name="/priceincrease.htm" class="springapp.web.PriceIncreaseFormController"> <property name="sessionForm" value="true"/> <property name="commandName" value="priceIncrease"/> <property name="commandClass" value="springapp.service.PriceIncrease"/> <property name="validator"> <bean class="springapp.service.PriceIncreaseValidator"/> </property> <property name="formView" value="priceincrease"/> <property name="successView" value="hello.htm"/> <property name="productManager" ref="productManager"/> </bean> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <property name="prefix" value="/WEB-INF/jsp/"/> <property name="suffix" value=".jsp"/> </bean> </beans>Code:public class ClientIpController extends MultiActionController{ private ClientIpDAO clientDAO; public void setClientDAO(ClientIpDAO clientDAO){ this.clientDAO = clientDAO; } public ClientIpDAO getClientDAO(){ return clientDAO; } public ModelAndView add(HttpServletRequest arg0, HttpServletResponse arg1,ClientIP clientIp) throws Exception { // TODO Auto-generated method stub clientDAO.addClientIP(clientIp); return new ModelAndView("hello"); } }


Reply With Quote