Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Maven/Spring/MVC Web app-错误无法TalendJob(第三方Talend_Spring_Eclipse_Maven_Tomcat7_Talend - Fatal编程技术网

Maven/Spring/MVC Web app-错误无法TalendJob(第三方Talend

Maven/Spring/MVC Web app-错误无法TalendJob(第三方Talend,spring,eclipse,maven,tomcat7,talend,Spring,Eclipse,Maven,Tomcat7,Talend,我正在Eclipse中开发一个Spring/MVC/Maven Web应用程序。该应用程序的用例是使用参数临时调用Talend jobs。用户在表单页面上输入时间框架信息(年、月)。在我添加所需的Talend JAR之前,一切都正常工作(表单、验证、模型、配置、错误检查等) 一些背景-我在Eclipse中成功创建了一个具有相同用例的简单Web应用程序。对于这个应用程序,我需要将Talend JAR放入Web-INF\lib文件夹。出于各种原因,我需要构建一个使用Spring/MVC/Maven技

我正在Eclipse中开发一个Spring/MVC/Maven Web应用程序。该应用程序的用例是使用参数临时调用Talend jobs。用户在表单页面上输入时间框架信息(年、月)。在我添加所需的Talend JAR之前,一切都正常工作(表单、验证、模型、配置、错误检查等)

一些背景-我在Eclipse中成功创建了一个具有相同用例的简单Web应用程序。对于这个应用程序,我需要将Talend JAR放入
Web-INF\lib
文件夹。出于各种原因,我需要构建一个使用Spring/MVC/Maven技术的Web应用程序。我将所有需要的Talend JAR加载到
Web-INF\lib文件夹中e> 文件夹(与以前的Web应用完全相同)。我成功运行了Maven clean安装。但运行嵌入式Tomcat(7.2.2版)时产生了以下错误:

[错误]编译错误: [错误]C:\Documents\TalendAdHoc\src\main\java\com\validator\UserValidator.java:[13] 错误:包talenddev1.job\u gl\u master\u ad\u hoc\u 0\u 3不存在 [错误] C:\Documents\TalendAdHoc\src\main\java\com\validator\UserValidator.java:[141,7] 错误:找不到符号

然后,我从该站点执行以下步骤:

将第三方jar添加到Maven项目中(将jar安装到本地存储库中,将存储库和依赖项添加到pom.xml中,等等)。运行嵌入式Tomcat会产生以下错误:

[错误]编译错误:[错误] C:\Documents\TalendAdHoc\src\main\java\com\validator\UserValidator.java:[155,16] 错误:无法访问TalendJob

`

我意识到这可能是Talend的问题,所以我也一直在与Talend社区合作

任何支持都将不胜感激。如果您需要更多信息,请告诉我

谢谢

这是我的pom.xml

`<modelVersion>4.0.0</modelVersion>
<groupId>com</groupId>
<artifactId>TalendAdHoc</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
  <failOnMissingWebXml>false</failOnMissingWebXml>
</properties>

<dependencies>
<!-- Spring MVC Dependency -->
<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-webmvc</artifactId>
  <version>4.3.7.RELEASE</version>
</dependency>

<!-- JSTL Dependency -->
<dependency>
  <groupId>javax.servlet.jsp.jstl</groupId>
  <artifactId>javax.servlet.jsp.jstl-api</artifactId>
  <version>1.2.1</version>
</dependency>

<dependency>
  <groupId>taglibs</groupId>
  <artifactId>standard</artifactId>
  <version>1.1.2</version>
</dependency>

<!-- Servlet Dependency -->
<dependency>
  <groupId>javax.servlet</groupId>
  <artifactId>javax.servlet-api</artifactId>
  <version>3.1.0</version>
  <scope>provided</scope>
</dependency>

<!-- JSP Dependency -->
<dependency>
  <groupId>javax.servlet.jsp</groupId>
  <artifactId>javax.servlet.jsp-api</artifactId>
  <version>2.3.1</version>
  <scope>provided</scope>
</dependency>

<dependency>
  <groupId>org.talend</groupId>
  <artifactId>job_gl_master_ad_hoc_0_3</artifactId>
  <version>1.0</version>
  <scope>system</scope>
  <systemPath>${project.basedir}/src/lib/job_gl_master_ad_hoc_0_3.jar
  </systemPath>
</dependency>

<dependency>
  <groupId>org.talend</groupId>
  <artifactId>job_gl_refresh_transaction_ad_hoc_0_2</artifactId>
  <version>1.0</version>
  <scope>system</scope>

 <systemPath>${project.basedir}
 /src/lib/job_gl_refresh_transaction_ad_hoc_0_2.jar
  </systemPath>
</dependency>

<dependency>
  <groupId>org.talend</groupId>
  <artifactId>job_gl_load_transaction_ad_hoc_0_2</artifactId>
  <version>1.0</version>
  <scope>system</scope>
  <systemPath>${project.basedir}
/src/lib/job_gl_load_transaction_ad_hoc_0_2.jar
  </systemPath>
</dependency>

<dependency>
  <groupId>org.talend</groupId>
  <artifactId>job_gl_load_summary_ad_hoc_0_1</artifactId>
  <version>1.0</version>
  <scope>system</scope>
  <systemPath>${project.basedir}
 /src/lib/job_gl_load_summary_ad_hoc_0_1.jar
  </systemPath>
 </dependency>

<dependency>
  <groupId>org.talend</groupId>
  <artifactId>job_gl_load_project_ad_hoc_0_1</artifactId>
  <version>1.0</version>
  <scope>system</scope>
  <systemPath>${project.basedir}
  /src/lib/job_gl_load_project_ad_hoc_0_1.jar
  </systemPath>
</dependency>

</dependencies> 

<build>
<sourceDirectory>src/main/java</sourceDirectory>
<resources>
  <resource>
    <directory>src/main/resources</directory>
  </resource>
</resources>
<plugins>

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.5.1</version>
        <configuration>
            <source>1.8</source>
            <target>1.8</target>
        </configuration>
    </plugin>

  <plugin>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.5.1</version>
    <configuration>
    <fork>true</fork>
      <executable>C:\Program Files\Java\jdk1.8.0_201\bin\javac.exe
      </executable>
      <source>1.8</source>
      <target>1.8</target>
    </configuration>
  </plugin>

  <!-- Embedded Apache Tomcat required for testing war -->
  <plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.2</version>
    <configuration>
      <path>/</path>
     </configuration>
  </plugin>

  </plugins>
  </build>
  </project>`
`4.0.0
通用域名格式
塔伦达霍克
0.0.1-快照
战争
假的
org.springframework
SpringWebMVC
4.3.7.1发布
javax.servlet.jsp.jstl
javax.servlet.jsp.jstl-api
1.2.1
塔格利布
标准
1.1.2
javax.servlet
javax.servlet-api
3.1.0
假如
javax.servlet.jsp
javax.servlet.jsp-api
2.3.1
假如
org.talend
作业\u总账\u主控\u临时\u 0\u 3
1
系统
${project.basedir}/src/lib/job\u gl\u master\u ad\u hoc\u 0\u 3.jar
org.talend
作业\u总账\u刷新\u事务\u临时\u 0\u 2
1
系统
${project.basedir}
/src/lib/job\u gl\u refresh\u transaction\u ad\u hoc\u 0\u 2.jar
org.talend
作业\u总账\u加载\u事务\u临时\u 0\u 2
1
系统
${project.basedir}
/src/lib/job\u gl\u load\u transaction\u ad\u hoc\u 0\u 2.jar
org.talend
作业\u总账\u加载\u摘要\u临时\u 0\u 1
1
系统
${project.basedir}
/src/lib/job\u gl\u load\u summary\u ad\u hoc\u 0\u 1.jar
org.talend
作业\u总账\u加载\u项目\u临时\u 0\u 1
1
系统
${project.basedir}
/src/lib/job\u gl\u load\u project\u ad\u hoc\u 0\u 1.jar
src/main/java
src/main/resources
org.apache.maven.plugins
maven编译器插件
3.5.1
1.8
1.8
maven编译器插件
3.5.1
真的
C:\ProgramFiles\Java\jdk1.8.0\u 201\bin\javac.exe
1.8
1.8
org.apache.tomcat.maven
tomcat7 maven插件
2.2
/
`
下面是UserValidator.java:

`package com.validator;

import java.util.Calendar;

import org.springframework.stereotype.Component;
import org.springframework.validation.Errors;
import org.springframework.validation.ValidationUtils;
import org.springframework.validation.Validator;

import com.model.User; 

import talenddev1.job_gl_master_ad_hoc_0_3.job_GL_Master_Ad_Hoc;

@Component
public class UserValidator implements Validator {

@Override
public boolean supports(Class<?> clazz) {
    return User.class.equals(clazz);
}

@Override
public void validate(Object obj, Errors err) {
    User user = (User) obj;

    Calendar cal = Calendar.getInstance();

    set vars...

    validation code...

    error handling code...

    }

    job_GL_Master_Ad_Hoc talendJob = new job_GL_Master_Ad_Hoc();

    String[] context = new String[] { 
   "--context_param Host_Analytics_CurrentYear=" + currentYear,
            "--context_param Host_Analytics_CurrentYearStart=" +
    currentYearStart,
            "--context_param Host_Analytics_CurrentYearEnd=" + currentYearEnd,
            "--context_param Host_Analytics_PreviousYear=" + previousYear,
            "--context_param Host_Analytics_PreviousYearStart=" +
     previousYearStart,
            "--context_param Host_Analytics_PreviousYearEnd=" +
     previousYearEnd,
            "--context_param Host_Analytics_Transaction_Flag=" +
     transactionFlag,
            "--context_param Host_Analytics_Summary_Flag=" + summaryFlag,
            "--context_param Host_Analytics_Project_Flag=" + projectFlag };
     talendJob.runJob(context);

      }
    }`
`package com.validator;
导入java.util.Calendar;
导入org.springframework.stereotype.Component;
导入org.springframework.validation.Errors;
导入org.springframework.validation.ValidationUtils;
导入org.springframework.validation.Validator;
导入com.model.User;
导入talenddev1.job\u gl\u master\u ad\u hoc\u 0\u 3.job\u gl\u master\u ad\u hoc;
@组成部分
公共类UserValidator实现验证器{
@凌驾
公共布尔支持(类clazz){
返回User.class.equals(clazz);
}
@凌驾
公共无效验证(对象对象对象,错误错误){
用户=(用户)对象;
Calendar cal=Calendar.getInstance();
设置变量。。。
验证代码。。。
错误处理代码。。。
}
job_GL_Master_Ad_Hoc talendJob=新job_GL_Master_Ad_Hoc();
字符串[]上下文=新字符串[]{
“--context_param Host_Analytics_CurrentYear=“+CurrentYear,
“--上下文参数主机分析当前年份开始=”+
今年开始,
“--context_param Host_Analytics_CurrentYearEnd=“+CurrentYearEnd,
“--context_param Host_Analytics_PreviousYear=“+PreviousYear,
“--context_param Host_Analytics_PreviousYearStart=”+
上一年开始,
“--context_param Host_Analytics_PreviousYearEnd=”+
去年年底,,
“--上下文参数主机分析事务标志=”+
transactionFlag,
“--context_param Host_Analytics_Summary_Flag=“+summaryFlag,
“--context_param Host_Analytics_Project_Flag=“+projectFlag};
talendJob.runJob(上下文);
}
}`

Hi.Spring不提供嵌入式Tomcat,而Spring Boot提供。如果你使用Maven,为什么要手动添加JAR?嗨,我是个新手,所以我从这个网站创建了web应用程序:然后修改它以满足我的用例,etcI建议查看Spring Boot及其web应用程序的文档……没问题,让我们来看看首先,你知道maven是如何工作的吗?你能在你的问题中添加pom.xml文件吗?好的,我添加了pom.xml和UserValidator.javaHi。Spring不提供嵌入式Tomcat,而Spring Boot提供。如果你使用maven,为什么要手动添加JAR?嗨,我是新手,所以我从这个网站创建了web应用程序:然后是mod为了满足我的使用案例,etcI建议您查看spring boot及其web应用程序的文档……没问题,让我们来尝试解决它。首先,您知道maven是如何工作的吗?您可以将pom.xml文件添加到您的问题中吗?好的,我添加了pom.xml和UserValidator.java
`package com.validator;

import java.util.Calendar;

import org.springframework.stereotype.Component;
import org.springframework.validation.Errors;
import org.springframework.validation.ValidationUtils;
import org.springframework.validation.Validator;

import com.model.User; 

import talenddev1.job_gl_master_ad_hoc_0_3.job_GL_Master_Ad_Hoc;

@Component
public class UserValidator implements Validator {

@Override
public boolean supports(Class<?> clazz) {
    return User.class.equals(clazz);
}

@Override
public void validate(Object obj, Errors err) {
    User user = (User) obj;

    Calendar cal = Calendar.getInstance();

    set vars...

    validation code...

    error handling code...

    }

    job_GL_Master_Ad_Hoc talendJob = new job_GL_Master_Ad_Hoc();

    String[] context = new String[] { 
   "--context_param Host_Analytics_CurrentYear=" + currentYear,
            "--context_param Host_Analytics_CurrentYearStart=" +
    currentYearStart,
            "--context_param Host_Analytics_CurrentYearEnd=" + currentYearEnd,
            "--context_param Host_Analytics_PreviousYear=" + previousYear,
            "--context_param Host_Analytics_PreviousYearStart=" +
     previousYearStart,
            "--context_param Host_Analytics_PreviousYearEnd=" +
     previousYearEnd,
            "--context_param Host_Analytics_Transaction_Flag=" +
     transactionFlag,
            "--context_param Host_Analytics_Summary_Flag=" + summaryFlag,
            "--context_param Host_Analytics_Project_Flag=" + projectFlag };
     talendJob.runJob(context);

      }
    }`