小编Fel*_*lix的帖子

java.lang.NoSuchMethodError org.springframework.core.annotation.AnnotationUtils.getAnnotation

当我运行我的junit测试时,我可以得到正确的结果,数据可以存储到数据库中.

当我将项目部署到tomcat时,我遇到了这个异常.

我的春季版本是3.1.1,tomcat版本是6.0.

2012-02-29-16:40:54,968 ERROR   - Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.transaction.annotation.AnnotationTransactionAttributeSource#0': Initialization of bean failed; nested exception is java.lang.NoSuchMethodError: org.springframework.core.annotation.AnnotationUtils.getAnnotation(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:527)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:580)
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
    at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4206)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4705)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:943)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:563)
    at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1399)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297)
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
    at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761) …
Run Code Online (Sandbox Code Playgroud)

java spring

12
推荐指数
1
解决办法
6万
查看次数

laravel4 composer install得到proc_open不可用的错误

现在我正在尝试使用composer来安装我的php包但是我收到了这个错误消息:$ composer install

Loading composer repositories with package information
Installing dependencies (including require-dev)
  - Installing filp/whoops (1.0.7)
    Downloading: 100%          

[Symfony\Component\Process\Exception\RuntimeException]                                   
The Process class relies on proc_open, which is not available on your PHP installation. 
Run Code Online (Sandbox Code Playgroud)

编辑:

启用proc_open函数后,我收到此错误,并将我的php memory_limit设置为384M:

Fatal error: Uncaught exception 'ErrorException' with message 'proc_open(): fork failed - Cannot allocate memory' in phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php:990
Stack trace:
#0 [internal function]: Composer\Util\ErrorHandler::handle(2, 'proc_open(): fo...', 'phar:///usr/loc...', 990, Array)
#1 phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php(990): proc_open('stty -a | grep ...', Array, NULL, NULL, NULL, Array)
#2 phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php(832): Symfony\Component\Console\Application->getSttyColumns()
#3 …
Run Code Online (Sandbox Code Playgroud)

php laravel composer-php laravel-4

12
推荐指数
2
解决办法
1万
查看次数

在String中查找电子邮件

我试图从字符串中获取电子邮件,如:

"*** test@gmail.com&&^ test2@gmail.com((& ";

private static Pattern p = Pattern.compile("(^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+$)");
Run Code Online (Sandbox Code Playgroud)

上面的代码可以收到一封电子邮件.

我怎么能得到所有?

java regex

8
推荐指数
1
解决办法
2万
查看次数

Disruptor helloworld的例子

我想学习Disruptor框架.谁可以给我一个helloworld示例,可以使用Java程序语言在main方法中运行?

java disruptor-pattern

7
推荐指数
1
解决办法
1万
查看次数

NamedParameterJdbcDaoSupport数据源autowire?

我有一个类扩展NamedParameterJdbcDaoSupport.这个超类有一个最终的setDataSource方法.如何使用注释@autowire将数据源连接到它?

java spring

7
推荐指数
1
解决办法
3697
查看次数

Jackson Exception 的序列化和反序列化

JSON 嵌套类数据绑定 作为答案,当我序列化和反序列化容器时,我得到了这个异常:

Caused by: org.codehaus.jackson.map.JsonMappingException: Can not find a Value deserializer for abstract type [simple type, class com.xiaonei.wap.ps.model.Container]
at org.codehaus.jackson.map.deser.StdDeserializerProvider._handleUnknownValueDeserializer(StdDeserializerProvider.java:321)
at org.codehaus.jackson.map.deser.StdDeserializerProvider.findValueDeserializer(StdDeserializerProvider.java:116)
at org.codehaus.jackson.map.deser.StdDeserializer.findDeserializer(StdDeserializer.java:260)
at
Run Code Online (Sandbox Code Playgroud)

java json jackson

5
推荐指数
1
解决办法
1319
查看次数

JSON嵌套类数据绑定

{ "type":"cat", "animal":{"name":"cat"} }

动物是一种abstract class.猫与狗是subclass.

现在我正在尝试convert json to java object并希望使用"type"来获取子类.

但是类型字段不在列中.

提前致谢 :)

@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property= "type")
@JsonSubTypes({ @Type(value = Cat.class, name = "cat"),
    @Type(value = Dog.class, name = "dog") })
abstract class Animal {
    public String name;
}



class Cat extends Animal {
public String name;
}

class Dog extends Animal {
public String name;
}
Run Code Online (Sandbox Code Playgroud)

问题是类型是动物{}.

如果类型在动物{}中,则代码将起作用.但它不是):

java json jackson

4
推荐指数
1
解决办法
5445
查看次数

URL的commons io 403,但httpclient可以

公地io代码:

String resultURL = String.format(GOOGLE_RECOGNIZER_URL, URLEncoder.encode("hello", "UTF-8"), "en-US");
URI uri = new URI(resultURL);
byte[] resultIO = IOUtils.toByteArray(uri);
Run Code Online (Sandbox Code Playgroud)

我有这个例外:

Exception in thread "main" java.io.IOException: Server returned HTTP response code: 403 for URL: http://translate.google.cn/translate_tts?ie=UTF-8&q=hello&tl=en-US&total=1&idx=0&textlen=3
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1436)
    at org.apache.commons.io.IOUtils.toByteArray(IOUtils.java:654)
    at org.apache.commons.io.IOUtils.toByteArray(IOUtils.java:635)
    at org.apache.commons.io.IOUtils.toByteArray(IOUtils.java:617)
    at com.renren.intl.soundsns.simsimi.speech.ttsclient.impl.GoogleTTSClient.main(GoogleTTSClient.java:70)
Run Code Online (Sandbox Code Playgroud)

但是当我使用httpclient时,结果还可以。

String resultURL = String.format(GOOGLE_RECOGNIZER_URL, URLEncoder.encode(text, "UTF-8"), "en-US");

HttpClient client = new HttpClient();

GetMethod g = new GetMethod(resultURL);

client.executeMethod(g);

byte[] resultByte = g.getResponseBody();
Run Code Online (Sandbox Code Playgroud)

这是怎么发生的?

提前致谢 :)

Maven的依赖:

<dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.4</version>
</dependency>
<dependency>
        <groupId>commons-httpclient</groupId>
        <artifactId>commons-httpclient</artifactId>
        <version>3.1</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

java http httpclient http-status-code-403 apache-commons-io

4
推荐指数
1
解决办法
2638
查看次数

使用codeigniter PHP致命错误:找不到类'MY_Model'

现在我正在学习CodeIgniter_2.1.4,但我得到了一个php错误;

我在/ data/www/application/core中有一个my_model.php文件

<?php

class MY_Model extends CI_Model {
   const DB_TABLE = 'abstract';
   const DB_TABLE_PK = 'abstract';

   private function insert() {
      $this->db->insert($this::DB_TABLE, $this);
      $this->{$this::DB_TABLE_PK} = $this->db->insert_id();
   }

   private function update() {
      $this->db->update($this::DB_TABLE, $this, $this::DB_TABLE_PK);
   }

   public function populate($row) {
      foreach($row as $key => $value) {
         $this->$key = $value;
      }
   }

   public function load($id) {
      $query = $this->db->get_where($this::DB_TABLE, array(
         $this::DB_TABLE_PK => $id,
      ));
      $this->populate($query->row());
   }

   public function delete(){
      $this->db->delete($this::DB_TABLE, array(
         $this::DB_TABLE_PK => $this->{$this::DB_TABLE_PK},
      ));
      unset($this->{$this::DB_TABLE_PK});
   }

   public function save(){
      if(isset($this->{$this::DB_TABLE_PK})) { …
Run Code Online (Sandbox Code Playgroud)

php codeigniter codeigniter-2

4
推荐指数
1
解决办法
1万
查看次数

maven nexus下载中央远程索引错误

Nexus版本2.12.0-01和jdk 1.7

当我设置中央存储库下载远程索引为true时.我收到了这个错误

jvm 1 | 2016-05-17 14:05:57,862+0800 INFO [ar-7-thread-2] admin 
org.sonatype.nexus.proxy.maven.routing.internal.RemoteContentDiscovererImpl 
- Remote strategy prefix-file on M2Repository(id=central) detected invalid 
input, results discarded: Prefix file size exceeds maximum allowed size 
(100000), refusing to load it.
Run Code Online (Sandbox Code Playgroud)

我没有在谷歌上找到任何信息):

提前致谢

maven-2 nexus maven

4
推荐指数
1
解决办法
2977
查看次数

spring mvc从拦截器获取映射控制器方法

现在我有一个像这样的控制器

@RequestMapping("/content/delete.json")
@Security(auth = AuthType.REQUIRED)
public ModelAndView deleteIndex(User user, @RequestParam("id") long id) {

}
Run Code Online (Sandbox Code Playgroud)

现在我试图从拦截器获取控制器映射方法并获取方法的注释.

Method method = RestRequestURLUtil.getInvokedMethod(handler, request);
Security security = method.getAnnotation(Security.class);
if(security.getAuth() == AuthType.REQUIRED) {
    do some validate here
}
Run Code Online (Sandbox Code Playgroud)

春天有没有像RestRequestURLUtil这样的课程?

提前致谢 :)

编辑:

web.xml中

<servlet>
    <servlet-name>rest</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>
                /WEB-INF/rest-servlet.xml,
                /WEB-INF/interceptor-servlet.xml
            </param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>rest</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>
Run Code Online (Sandbox Code Playgroud)

拦截器的server.xml

<mvc:interceptors>
    <mvc:interceptor>
    <mvc:mapping path="/**" />
    <bean class="com.test.web.interceptors.SecurityInterceptor" init-method="init">
     ...
    </bean>
</mvc:interceptor>
Run Code Online (Sandbox Code Playgroud)

spring spring-mvc

3
推荐指数
1
解决办法
6339
查看次数

PHP致命错误:使用laravel4找不到类'PDO'

一小时后解决这个问题我失败了):我的错误信息是:

Generating autoload files
PHP Fatal error:  Class 'PDO' not found in /usr/share/nginx/html/laravel/app/config/database.php on line 16
{"error":{"type":"Symfony\\Component\\Debug\\Exception\\FatalErrorException","message":"Class 'PDO' not found","file":"\/usr\/share\/nginx\/html\/laravel\/app\/config\/database.php","line":16}}Script php artisan clear-compiled handling the post-update-cmd event returned with an error



  [RuntimeException]                                                                                                    
  Error Output: PHP Fatal error:  Class 'PDO' not found in /usr/share/nginx/html/laravel/app/config/database.php on li  
  ne 16                                                                                                                 




update [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--lock] [--no-plugins] [--no-custom-installers] [--no-scripts] [--no-progress] [--with-dependencies] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [packages1] ... [packagesN]
Run Code Online (Sandbox Code Playgroud)

我使用linux centos 6.4 php 5.5.3和laravel 4.

你能帮我多少谢谢吗?

php pdo laravel-4

2
推荐指数
1
解决办法
2万
查看次数

使用httpclient fluent API发布文件

由于代码非常干净,因此我始终使用httpclient fluent api来发布消息。例如:

String html = Request.Post("URL")
             .connectTimeout(2000).socketTimeout(2000)
             .bodyForm(Form.form().add("type", "image").build(), Charset.forName("UTF8"))
             .execute().returnContent().asString();
Run Code Online (Sandbox Code Playgroud)

阅读httpclient文档后,我发现了这一点:

MultipartEntityBuilder builder = MultipartEntityBuilder.create();
builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
builder.setCharset(Charset.forName(CHARSET));
builder.addBinaryBody("media", bytes, ContentType.MULTIPART_FORM_DATA, fileName);
Run Code Online (Sandbox Code Playgroud)

问题是如何使用流畅的API实现此功能。

我找到了,.bodyFile(new File(""), ContentType.MULTIPART_FORM_DATA)但我不知道如何设置文件的表单参数名称。

apache-httpclient-4.x

2
推荐指数
1
解决办法
1476
查看次数