maven构建工程(springmvc/ssh/ssm)错误解决大全


1.maven(spring-hibernate)项目编译正常,部署启动时出现下面错误:

nested exception is java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index

google、bd了好多办法,都没能解决,通过自己尝试判断,应该是包的冲突

查看下persistence关键字的包有多少,试着注释掉其中一个,下面是我的依赖


我将persistence-api注释掉后,项目正常了,希望能帮助一些朋友们,少走一些弯路!


2.spring+hibernate4项目,部署启动报错:

could not initialize proxy - no Session

解决方案是:配置hibernate.enable_lazy_load_no_trans为true

<property name="hibernateProperties">
            <props>
                <prop key="javax.persistence.validation.mode">none</prop>
                <prop key="hibernate.dialect">${hibernate.dialect}</prop>
                <prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
                <prop key="hibernate.format_sql">true</prop>
                <prop key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}</prop>
                <span style="color:#009900;"><prop key="hibernate.enable_lazy_load_no_trans">true</prop></span>
            </props>
 </property>


3.Content-Type: application/x-www-form-urlencoded

接受第三方的post过来的xml或者json串,如果没有设置Content-Type: application/x-www-form-urlencoded。则可以通过流来解析
代码如下
BufferedReader in= new BufferedReader(new InputStreamReader(httpServletRequest.getInputStream()));
			String s="";
			StringBuffer sb=new StringBuffer();
			while((s=in.readLine())!=null){
				sb.append(s);
				}
			// dom解析xml
			DocumentBuilderFactory buildFactory = DocumentBuilderFactory.newInstance();
			DocumentBuilder build = buildFactory.newDocumentBuilder();
			Document document = build.parse(httpServletRequest.getInputStream(),"utf-8");

			NodeList nodelist = document.getElementsByTagName("MO");
			for (int i = 0; i < nodelist.getLength(); i++) {
				longcodeArray.add(document.getElementsByTagName("LongCode").item(i).getFirstChild().getNodeValue().substring(1)); 
				messageArray.add(document.getElementsByTagName("Message").item(i).getFirstChild().getNodeValue());
			}
如果设置了Content-Type: application/x-www-form-urlencoded 则需要去parmmeterMap中间去取

List<String> longcodeArray=new ArrayList<String>();
		List<String> messageArray=new ArrayList<String>();
		try {
			CreateLog log = new CreateLog();
			HttpServletRequest httpServletRequest = this.getHttpServletRequest();
			String keyandValue="";
			String key="";
			String value="";
			Iterator<String> it=httpServletRequest.getParameterMap().keySet().iterator();
			while(it.hasNext()){
				key=it.next();
				value = ((Object[])(httpServletRequest.getParameterMap().get(key)))[0].toString();
				keyandValue=key+"="+value;
				System.out.println(key+"= "+value);
			}
		    if(keyandValue!=null){
		    	//dom4j来解析xml字符串
		    	Document document=DocumentHelper.parseText(keyandValue.toString());
				Element root=document.getRootElement();
				List mo=root.elements("MO");
				for(int i=0;i<mo.size();i++){
					Element longcode=((Element)mo.get(i)).element("LongCode");
					Element message=((Element)mo.get(i)).element("Message");
					longcodeArray.add(longcode.getText());
					messageArray.add(message.getText());
				}
		    	
		    	
		    }



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_夜半钟声到客船

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值