0

This is my pom file

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.activiti.examples</groupId>
  <artifactId>activiti-examples</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>jar</packaging>
  <name>BPMN 2.0 with Activiti - Examples</name>
  <properties>
    <activiti-version>5.20.0</activiti-version>
  </properties>
  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.3.5.RELEASE</version>
</parent>
  <dependencies>
    <dependency>
      <groupId>org.activiti</groupId>
      <artifactId>activiti-engine</artifactId>
      <version>${activiti-version}</version>
      <scope>import</scope>
      <type>pom</type>
    </dependency>
    <!-- <dependency>
      <groupId>org.activiti</groupId>
      <artifactId>activiti-spring</artifactId>
      <version>${activiti-version}</version>
    </dependency> -->
    <dependency>
      <groupId>org.codehaus.groovy</groupId>
      <artifactId>groovy-all</artifactId>
      <version>2.4.3</version>
    </dependency>
   <!--  <dependency>
      <groupId>com.h2database</groupId>
      <artifactId>h2</artifactId>
      <version>1.3.168</version>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.7.6</version>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-jdk14</artifactId>
      <version>1.7.6</version>
    </dependency> -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      </dependency>
    <!-- http://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    </dependency>
<dependency>
    <groupId>org.activiti</groupId>
    <artifactId>spring-boot-starter-basic</artifactId>
    <version>5.17.0</version>
</dependency>
<!-- http://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-actuator -->
<!-- <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
    <version>1.3.5.RELEASE</version>
</dependency> -->
<!-- http://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter -->
<!-- <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
    <version>1.3.5.RELEASE</version>
</dependency> -->
<!-- http://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>1.6</source>
          <target>1.6</target>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-eclipse-plugin</artifactId>
        <inherited>true</inherited>
        <configuration>
          <classpathContainers>
            <classpathContainer>org.eclipse.jdt.USER_LIBRARY/Activiti Designer Extensions</classpathContainer>
          </classpathContainers>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

Hi all i am trying to do activiti rest with spring boot. But i am getting error. However i am able to build one app for startup.It works fine.But getting error only in that.Please help to resolve my error. You can find the errors below in the snippet.

These are my errors

2016-07-28 12:21:56.611  INFO 7112 --- [           main] c.b.a.rest.leaveRequest.MyApplication    : Starting MyApplication on mdnoorshid with PID 7112 (started by noorshid in /media/noorshid/New Volume/BizRuntime/Activiti_Workspace/Activiti-Rest-Complete-Process-LeaveRequest)
2016-07-28 12:21:56.618  INFO 7112 --- [           main] c.b.a.rest.leaveRequest.MyApplication    : No active profile set, falling back to default profiles: default
2016-07-28 12:21:57.229  INFO 7112 --- [           main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@75225d4a: startup date [Thu Jul 28 12:21:57 IST 2016]; root of context hierarchy
2016-07-28 12:21:59.347  INFO 7112 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [class org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$66951570] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2016-07-28 12:22:00.122  INFO 7112 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)
2016-07-28 12:22:00.150  INFO 7112 --- [           main] o.apache.catalina.core.StandardService   : Starting service Tomcat
2016-07-28 12:22:00.152  INFO 7112 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/8.0.33
2016-07-28 12:22:00.342  INFO 7112 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2016-07-28 12:22:00.342  INFO 7112 --- [ost-startStop-1] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 3119 ms
2016-07-28 12:22:00.910  INFO 7112 --- [ost-startStop-1] o.s.b.c.e.ServletRegistrationBean        : Mapping servlet: 'dispatcherServlet' to [/]
2016-07-28 12:22:00.919  INFO 7112 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean  : Mapping filter: 'characterEncodingFilter' to: [/*]
2016-07-28 12:22:00.920  INFO 7112 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean  : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2016-07-28 12:22:00.920  INFO 7112 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean  : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2016-07-28 12:22:00.921  INFO 7112 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean  : Mapping filter: 'requestContextFilter' to: [/*]
2016-07-28 12:22:01.001  WARN 7112 --- [           main] ationConfigEmbeddedWebApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'myRestController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.bizruntime.activiti.rest.leaveRequest.MyService com.bizruntime.activiti.rest.leaveRequest.MyRestController.myService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.bizruntime.activiti.rest.leaveRequest.MyService] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
2016-07-28 12:22:01.006  INFO 7112 --- [           main] o.apache.catalina.core.StandardService   : Stopping service Tomcat
2016-07-28 12:22:01.024 ERROR 7112 --- [           main] o.s.boot.SpringApplication               : Application startup failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'myRestController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.bizruntime.activiti.rest.leaveRequest.MyService com.bizruntime.activiti.rest.leaveRequest.MyRestController.myService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.bizruntime.activiti.rest.leaveRequest.MyService] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
 at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:334) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1214) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:543) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:772) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839) ~[spring-context-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538) ~[spring-context-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:118) ~[spring-boot-1.3.5.RELEASE.jar:1.3.5.RELEASE]
 at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:766) [spring-boot-1.3.5.RELEASE.jar:1.3.5.RELEASE]
 at org.springframework.boot.SpringApplication.createAndRefreshContext(SpringApplication.java:361) [spring-boot-1.3.5.RELEASE.jar:1.3.5.RELEASE]
 at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) [spring-boot-1.3.5.RELEASE.jar:1.3.5.RELEASE]
 at org.springframework.boot.SpringApplication.run(SpringApplication.java:1191) [spring-boot-1.3.5.RELEASE.jar:1.3.5.RELEASE]
 at org.springframework.boot.SpringApplication.run(SpringApplication.java:1180) [spring-boot-1.3.5.RELEASE.jar:1.3.5.RELEASE]
 at com.bizruntime.activiti.rest.leaveRequest.MyApplication.main(MyApplication.java:19) [classes/:na]
Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.bizruntime.activiti.rest.leaveRequest.MyService com.bizruntime.activiti.rest.leaveRequest.MyRestController.myService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.bizruntime.activiti.rest.leaveRequest.MyService] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
 at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:573) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:331) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 ... 17 common frames omitted
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.bizruntime.activiti.rest.leaveRequest.MyService] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
 at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:1373) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1119) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1014) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:545) ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
 ... 19 common frames omitted

2016-07-28 12:22:01.028  INFO 7112 --- [           main] .b.l.ClasspathLoggingApplicationListener : Application failed to start with classpath: [file:/media/noorshid/New%20Volume/BizRuntime/Activiti_Workspace/Activiti-Rest-Complete-Process-LeaveRequest/target/classes/, file:/home/noorshid/.m2/repository/org/activiti/activiti-engine/5.20.0/activiti-engine-5.20.0.jar, file:/home/noorshid/.m2/repository/org/activiti/activiti-bpmn-converter/5.20.0/activiti-bpmn-converter-5.20.0.jar, file:/home/noorshid/.m2/repository/org/activiti/activiti-bpmn-model/5.20.0/activiti-bpmn-model-5.20.0.jar, file:/home/noorshid/.m2/repository/org/activiti/activiti-process-validation/5.20.0/activiti-process-validation-5.20.0.jar, file:/home/noorshid/.m2/repository/org/activiti/activiti-image-generator/5.20.0/activiti-image-generator-5.20.0.jar, file:/home/noorshid/.m2/repository/org/apache/commons/commons-email/1.4/commons-email-1.4.jar, file:/home/noorshid/.m2/repository/com/sun/mail/javax.mail/1.5.5/javax.mail-1.5.5.jar, file:/home/noorshid/.m2/repository/javax/activation/activation/1.1.1/activation-1.1.1.jar, file:/home/noorshid/.m2/repository/org/apache/commons/commons-lang3/3.3.2/commons-lang3-3.3.2.jar, file:/home/noorshid/.m2/repository/org/mybatis/mybatis/3.3.0/mybatis-3.3.0.jar, file:/home/noorshid/.m2/repository/org/springframework/spring-beans/4.2.6.RELEASE/spring-beans-4.2.6.RELEASE.jar, file:/home/noorshid/.m2/repository/joda-time/joda-time/2.8.2/joda-time-2.8.2.jar, file:/home/noorshid/.m2/repository/org/slf4j/slf4j-api/1.7.21/slf4j-api-1.7.21.jar, file:/home/noorshid/.m2/repository/org/slf4j/jcl-over-slf4j/1.7.21/jcl-over-slf4j-1.7.21.jar, file:/home/noorshid/.m2/repository/org/codehaus/groovy/groovy-all/2.4.3/groovy-all-2.4.3.jar, file:/home/noorshid/.m2/repository/junit/junit/4.11/junit-4.11.jar, file:/home/noorshid/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar, file:/home/noorshid/.m2/repository/org/springframework/boot/spring-boot-starter-web/1.3.5.RELEASE/spring-boot-starter-web-1.3.5.RELEASE.jar, file:/home/noorshid/.m2/repository/org/springframework/boot/spring-boot-starter/1.3.5.RELEASE/spring-boot-starter-1.3.5.RELEASE.jar, file:/home/noorshid/.m2/repository/org/springframework/boot/spring-boot/1.3.5.RELEASE/spring-boot-1.3.5.RELEASE.jar, file:/home/noorshid/.m2/repository/org/springframework/boot/spring-boot-autoconfigure/1.3.5.RELEASE/spring-boot-autoconfigure-1.3.5.RELEASE.jar, file:/home/noorshid/.m2/repository/org/springframework/boot/spring-boot-starter-logging/1.3.5.RELEASE/spring-boot-starter-logging-1.3.5.RELEASE.jar, file:/home/noorshid/.m2/repository/ch/qos/logback/logback-classic/1.1.7/logback-classic-1.1.7.jar, file:/home/noorshid/.m2/repository/ch/qos/logback/logback-core/1.1.7/logback-core-1.1.7.jar, file:/home/noorshid/.m2/repository/org/slf4j/jul-to-slf4j/1.7.21/jul-to-slf4j-1.7.21.jar, file:/home/noorshid/.m2/repository/org/slf4j/log4j-over-slf4j/1.7.21/log4j-over-slf4j-1.7.21.jar, file:/home/noorshid/.m2/repository/org/yaml/snakeyaml/1.16/snakeyaml-1.16.jar, file:/home/noorshid/.m2/repository/org/springframework/boot/spring-boot-starter-tomcat/1.3.5.RELEASE/spring-boot-starter-tomcat-1.3.5.RELEASE.jar, file:/home/noorshid/.m2/repository/org/apache/tomcat/embed/tomcat-embed-core/8.0.33/tomcat-embed-core-8.0.33.jar, file:/home/noorshid/.m2/repository/org/apache/tomcat/embed/tomcat-embed-el/8.0.33/tomcat-embed-el-8.0.33.jar, file:/home/noorshid/.m2/repository/org/apache/tomcat/embed/tomcat-embed-logging-juli/8.0.33/tomcat-embed-logging-juli-8.0.33.jar, file:/home/noorshid/.m2/repository/org/apache/tomcat/embed/tomcat-embed-websocket/8.0.33/tomcat-embed-websocket-8.0.33.jar, file:/home/noorshid/.m2/repository/org/springframework/boot/spring-boot-starter-validation/1.3.5.RELEASE/spring-boot-starter-validation-1.3.5.RELEASE.jar, file:/home/noorshid/.m2/repository/org/hibernate/hibernate-validator/5.2.4.Final/hibernate-validator-5.2.4.Final.jar, file:/home/noorshid/.m2/repository/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final.jar, file:/home/noorshid/.m2/repository/org/jboss/logging/jboss-logging/3.3.0.Final/jboss-logging-3.3.0.Final.jar, file:/home/noorshid/.m2/repository/com/fasterxml/classmate/1.1.0/classmate-1.1.0.jar, file:/home/noorshid/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.6.6/jackson-databind-2.6.6.jar, file:/home/noorshid/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.6.6/jackson-annotations-2.6.6.jar, file:/home/noorshid/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.6.6/jackson-core-2.6.6.jar, file:/home/noorshid/.m2/repository/org/springframework/spring-web/4.2.6.RELEASE/spring-web-4.2.6.RELEASE.jar, file:/home/noorshid/.m2/repository/org/springframework/spring-webmvc/4.2.6.RELEASE/spring-webmvc-4.2.6.RELEASE.jar, file:/home/noorshid/.m2/repository/mysql/mysql-connector-java/5.1.6/mysql-connector-java-5.1.6.jar, file:/home/noorshid/.m2/repository/org/activiti/spring-boot-starter-basic/5.17.0/spring-boot-starter-basic-5.17.0.jar, file:/home/noorshid/.m2/repository/org/activiti/activiti-spring/5.17.0/activiti-spring-5.17.0.jar, file:/home/noorshid/.m2/repository/org/springframework/spring-jdbc/4.2.6.RELEASE/spring-jdbc-4.2.6.RELEASE.jar, file:/home/noorshid/.m2/repository/org/springframework/spring-tx/4.2.6.RELEASE/spring-tx-4.2.6.RELEASE.jar, file:/home/noorshid/.m2/repository/org/springframework/spring-orm/4.2.6.RELEASE/spring-orm-4.2.6.RELEASE.jar, file:/home/noorshid/.m2/repository/commons-dbcp/commons-dbcp/1.4/commons-dbcp-1.4.jar, file:/home/noorshid/.m2/repository/commons-pool/commons-pool/1.6/commons-pool-1.6.jar, file:/home/noorshid/.m2/repository/org/springframework/boot/spring-boot-starter-jdbc/1.3.5.RELEASE/spring-boot-starter-jdbc-1.3.5.RELEASE.jar, file:/home/noorshid/.m2/repository/org/apache/tomcat/tomcat-jdbc/8.0.33/tomcat-jdbc-8.0.33.jar, file:/home/noorshid/.m2/repository/org/apache/tomcat/tomcat-juli/8.0.33/tomcat-juli-8.0.33.jar, file:/home/noorshid/.m2/repository/org/springframework/spring-context/4.2.6.RELEASE/spring-context-4.2.6.RELEASE.jar, file:/home/noorshid/.m2/repository/org/springframework/spring-aop/4.2.6.RELEASE/spring-aop-4.2.6.RELEASE.jar, file:/home/noorshid/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar, file:/home/noorshid/.m2/repository/org/springframework/spring-core/4.2.6.RELEASE/spring-core-4.2.6.RELEASE.jar, file:/home/noorshid/.m2/repository/org/springframework/spring-expression/4.2.6.RELEASE/spring-expression-4.2.6.RELEASE.jar]

My Main Class

import javax.sql.DataSource;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;

import com.bizruntime.activiti.rest.util.Config;

@Configuration
@ComponentScan
@EnableAutoConfiguration
public class MyApplication 
{
public static void main(String[] args) {
    SpringApplication.run(MyApplication.class, args);
}

//changing default database to mysql
public DataSource database(){
    return DataSourceBuilder.create().url(Config.getConfig().getProperty("url"))
            .username(Config.getConfig().getProperty("username")).password(Config.getConfig().getProperty("password"))
            .driverClassName(Config.getConfig().getProperty("driverClassName")).build();
}
}

My Rest Class

import java.util.ArrayList;
import java.util.List;
import org.activiti.engine.task.Task;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class MyRestController
{
@Autowired
private MyService myService; 

@RequestMapping(value="/process", method=RequestMethod.POST)
public void startProcessInstance(){
 myService.startProcess();
}

@RequestMapping(value="/tasks", method= RequestMethod.GET, produces=MediaType.APPLICATION_JSON_VALUE)
public List<TaskRepresentation> getTasks(@RequestParam String assignee) {
    List<Task> tasks = myService.getTasks(assignee);
    List<TaskRepresentation> dtos = new ArrayList<TaskRepresentation>();
    for (Task task : tasks) {
        dtos.add(new TaskRepresentation(task.getId(), task.getName()));
    }
    return dtos;
}

@RequestMapping(value="/claim",method=RequestMethod.POST)
public void claimTheTask(String taskId,String assignee){
 myService.claimTask(taskId, assignee); 
}

@RequestMapping(value="/complete",method=RequestMethod.POST)
public void completeTheTask(String taskId){
 myService.completeTask(taskId);
}

static class TaskRepresentation
{
String id;
String name;
public TaskRepresentation(String id,String name){
 this.id=id;
 this.name=name;
}
public String getId() {
 return id;
}
public void setId(String id) {
 this.id = id;
}
public String getName() {
 return name;
}
public void setName(String name) {
 this.name = name;
}
}
}

My Service Class

import org.activiti.engine.RuntimeService;
import org.activiti.engine.TaskService;
import org.activiti.engine.task.Task;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;

import com.bizruntime.activiti.rest.util.Config;

public class MyService {

 @Autowired
 private RuntimeService runtimeService;

 @Autowired
 private TaskService taskService;

 @Transactional
 public void startProcess() {
  Map<String, Object> variables1 = new HashMap<String, Object>();
  variables1.put("name", Config.getConfig().getProperty("name"));
  variables1.put("noOfLeaveDays1", Config.getConfig().getProperty("noOfLeaveDays"));
  variables1.put("emailId", Config.getConfig().getProperty("emailId"));
  variables1.put("reason", Config.getConfig().getProperty("reason"));
  runtimeService.startProcessInstanceByKey("restLeaveRequest", variables1);
 }
 
 @Transactional
 public List<Task>getTasks(String asignee){
 return taskService.createTaskQuery().taskAssignee(asignee).list();
 }
 
 @Transactional
 public void claimTask(String taskId,String assignee){
  taskService.claim(taskId,assignee);
 }
 
 @Transactional
 public void completeTask(String taskId){
  Map<String,Object>variables2=new HashMap<String, Object>();
  variables2.put("approveRequest1",Config.getConfig().getProperty("approveRequest"));
  variables2.put("remarks1",Config.getConfig().getProperty("remarks"));
  taskService.complete(taskId,variables2);
 }
 
}
Md Noorshid
  • 107
  • 12

3 Answers3

1

Your MyService class needs to have the @Component or @Service annotation to be picked up by Spring component scanning.

Also, make sure the class is in an autoscanned package.

Joram Barrez
  • 301
  • 1
  • 5
  • Hi Joram thanks for your attention i did exactly what you said but error is same.I am not using xml bean file,can you say how to bring class in autoscannned package. – Md Noorshid Jul 28 '16 at 10:58
  • MySerivce class has already has @service annotation but still getting problem.Please help me how to resolve that one – Md Noorshid Jul 29 '16 at 06:46
0

Add @Service or @Component annotation to your MyService class. so, that it can be initialized before being injected.

Abbas Kararawala
  • 1,254
  • 12
  • 19
  • Srry abbas Same error only i did like that '@Service' '@Component' public class MyService { Plz igonre single quote.Thanks for your attention – Md Noorshid Jul 28 '16 at 10:52
  • `@ComponentScan` will by default scan in the package of the class it is called in. see - http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/context/annotation/ComponentScan.html you can either transfer your classes into the package of your main class. or provide a value to your component scan annotation. – Abbas Kararawala Jul 28 '16 at 11:06
  • hi abbas i did the same, i have mentioned the specific package in '@'componentScan("my main package").And also i have added '@'component in my both class MyRestController and MyService class.But error is same 'Error creating bean with name 'myRestController': Injection of autowired dependencies failed;' – Md Noorshid Jul 28 '16 at 11:26
  • However i did one simple project where i have mentioned only one package,its working fine but getting problem in my second project where i have given two packages. – Md Noorshid Jul 28 '16 at 11:28
  • for multiple packages, try something like this - `@ComponentScan({"your.package.first","your.package.second"})` – Abbas Kararawala Jul 28 '16 at 12:10
  • oops again getting the same error.I don't getting why it is coming.I have added '@'component annotation.But still getting the same error.Error is again like that for **my rest class** **'Error creating bean with name 'myRestController': Injection of autowired dependencies failed;'.** – Md Noorshid Jul 28 '16 at 12:31
  • lets try one last time! remove all of your `@Annotations` from your `MyApplication` class and use `@SpringBootApplication(scanBasePackages={"your.package.first","your.package.second"})`. last trick in my pocket ;) – Abbas Kararawala Jul 28 '16 at 12:53
  • ha ha ha okay abbas lets try it – Md Noorshid Jul 28 '16 at 13:08
  • oops (: nooooooooooo.Anyway thanks abbas for your kind help – Md Noorshid Jul 28 '16 at 13:12
0

In your class MyApplication, enable component scanning as below.

You should include the packages for your services,controllers, etc.

@ComponentScan({
      "com.abc.xyz.package1"
    , "com.abc.xyz.package2"
    })

As suggested by most people here, add @Service into your MyService Class ( I cannot see that annotation in this question, you may not updated this question).

Sundararaj Govindasamy
  • 8,180
  • 5
  • 44
  • 77