标签: spark-java

在哪里放置Spark Web Framework的静态文件?

在尝试使用Spark Web框架提供静态文件时,我在哪里放置文件?

我无法在网上找到任何东西 - 我开始怀疑我对Eclipse和Java项目的类路径,相对路径等一无所知.

关于Spark中静态文件的这一段是指/public,但我不知道它会在哪里.使用Windows,Eclipse Luna和我的项目转换为使用Maven.

我已经尝试过在GitHub上查看代码了,但是我试图找到它有点不合时宜.

java eclipse maven spark-java

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

java.lang.ClassCastException使用远程服务器上的spark作业中的lambda表达式

我正在尝试使用sparkjava.com框架为我的apache spark作业构建一个web api.我的代码是:

@Override
public void init() {
    get("/hello",
            (req, res) -> {
                String sourcePath = "hdfs://spark:54310/input/*";

                SparkConf conf = new SparkConf().setAppName("LineCount");
                conf.setJars(new String[] { "/home/sam/resin-4.0.42/webapps/test.war" });
                File configFile = new File("config.properties");

                String sparkURI = "spark://hamrah:7077";

                conf.setMaster(sparkURI);
                conf.set("spark.driver.allowMultipleContexts", "true");
                JavaSparkContext sc = new JavaSparkContext(conf);

                @SuppressWarnings("resource")
                JavaRDD<String> log = sc.textFile(sourcePath);

                JavaRDD<String> lines = log.filter(x -> {
                    return true;
                });

                return lines.count();
            });
}
Run Code Online (Sandbox Code Playgroud)

如果我删除lambda表达式或将其放在一个简单的jar而不是web服务(不知何故是一个servlet)中,它将运行而没有任何错误.但是在servlet中使用lambda表达式将导致此异常:

15/01/28 10:36:33 WARN TaskSetManager: Lost task 0.0 in stage 0.0 (TID 0, hamrah): java.lang.ClassCastException: cannot assign instance …
Run Code Online (Sandbox Code Playgroud)

java lambda java-8 spark-java

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

如何使用Spark Java框架中的get获取请求参数?

我是sparkjava的新手.我想用spark java读取我的请求参数,但我无法找到正确的语法.请帮帮我.下面是我的路由方法和客户端调用它:

我的客户端请求url: / smartapp/getDataViewModelConfig?collId = 123'

路线方法:

get("smartapp/getDataViewModelConfig/:id", "application/json", (request, response)

        -> {
  String id = request.params(":id");
}
Run Code Online (Sandbox Code Playgroud)

'id'字段在这里返回null.关于这里出了什么问题的任何建议?

get url-parameters spark-java

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

如何部署一个火花Java Web应用程序?

我使用spark web框架来创建webapp,但我不知道如何部署这个webapp.我很抱歉,如果这是非常基本的,但我是新的引发框架,我找不到任何指导我如何部署spark webapp的文档:

  • 如何独立部署spark webapp
  • 如何构建spark webapp(war文件或此类文件)并使用Web服务器(jetty或Tomcat)进行部署.

java webserver spark-java

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

如何使用spark java从表单中获取数据?

我对所有这些事情都很陌生,但希望你们能帮我理解它是如何运作的.我有一个带字段的表格.我如何从客户端获取数据?正在寻找一些信息,但无法找到.

<form action="Dispatcher" method="post">
    <fieldset>
        <p>Name</p>
        <input type="text" name="userName" required="true">

        <p>Email</p>
        <input type="text" name="userEmail" required="true">
        <input type="submit" value="submit">
    </fieldset>
</form>
Run Code Online (Sandbox Code Playgroud)

java post spark-java

16
推荐指数
3
解决办法
8398
查看次数

在spark-java中使用https

如何在spark-java框架中使用自定义SSLContext和自定义SSLServerSocketFactory?我在SparkServerImpl中搜索过但不知道如何注入sslfactory,有什么建议吗?

spark-java

15
推荐指数
1
解决办法
4200
查看次数

使用HttpURLConnection在Request body中发送数据

HttpURLConnection用来向使用JAVA Spark创建的本地部署的本地服务发出POST请求.当我使用HttpURLConnection进行POST调用时,我想在请求体中发送一些数据,但每次JAVA Spark中的请求体都为null.以下是我正在使用的代码

Java Spark POST服务处理程序

post("/", (req, res) -> { System.out.println("Request Body: " + req.body()); return "Hello!!!!"; });

HTTPClass进行发布呼叫

`public class HTTPClassExample{
   public static void main(String[] args) {
        try{
            URL url = new URL("http://localhost:4567/");
            HttpURLConnection httpCon = (HttpURLConnection) url.openConnection();
            httpCon.setDoOutput(true);
            httpCon.setRequestMethod("POST");
            httpCon.connect();
            OutputStream os = httpCon.getOutputStream();
            OutputStreamWriter osw = new OutputStreamWriter(os, "UTF-8");    
            osw.write("Just Some Text");
            System.out.println(httpCon.getResponseCode());
            System.out.println(httpCon.getResponseMessage());
            osw.flush();
            osw.close();  
        }catch(Exception ex){
            ex.printStackTrace();
        }
    }
}`
Run Code Online (Sandbox Code Playgroud)

java web-services httpurlconnection spark-java microservices

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

Spark Java框架中的连接池

Java Spark框架使用嵌入式Jetty作为Web服务器.Jetty支持使用HikariCP等工具进行连接池,并在XML文件中提供配置选项.但是,根据这些帖子,Spark确实允许配置Jetty.有很多使用Spark的例子,但他们要么不使用数据库,要么使用DriverManager连接数据库.

是否可以通过Spark中的数据源和JNDI配置连接池?如果是这样,怎么样?

java jndi connection-pooling jetty spark-java

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

spark java:如何处理multipart/form-data输入?

我正在使用spark来开发Web应用程序; 我想上传文件时出现问题:

public final class SparkTesting
{
    public static void main(final String... args)
    {
        Spark.staticFileLocation("/site");

        Spark.port(8080);

        Spark.post("/upload", (request, response) -> {
            final Part uploadedFile = request.raw().getPart("uploadedFile");
            final Path path = Paths.get("/tmp/meh");
            try (final InputStream in = uploadedFile.getInputStream()) {
                Files.copy(in, path);
            }

            response.redirect("/");
            return "OK";
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

但我得到这个错误:

[qtp509057984-36] ERROR spark.webserver.MatcherFilter - 
java.lang.IllegalStateException: No multipart config for servlet
    at org.eclipse.jetty.server.Request.getPart(Request.java:2039)
    at javax.servlet.http.HttpServletRequestWrapper.getPart(HttpServletRequestWrapper.java:361)
    at com.github.fge.grappa.debugger.web.SparkTesting.lambda$main$0(SparkTesting.java:20)
    at com.github.fge.grappa.debugger.web.SparkTesting$$Lambda$1/920011586.handle(Unknown Source)
    at spark.SparkBase$1.handle(SparkBase.java:264)
    at spark.webserver.MatcherFilter.doFilter(MatcherFilter.java:154)
    at spark.webserver.JettyHandler.doHandle(JettyHandler.java:60)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:179)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136)
    at …
Run Code Online (Sandbox Code Playgroud)

java jetty spark-java

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

Spark框架:匹配或不跟踪斜杠

我在Spark框架中注意到了一些东西.它与使用映射路由的尾部斜杠不匹配.所以它认为/ api/test和/ api/test /是不同的URI.

如果有一种方法可以将它们一起通配,那就好了,但似乎没有.我错过了什么吗?

我想要这条路线:

Spark.get("/api/test", (req, res) -> {
            return "TEST OK";
        });
Run Code Online (Sandbox Code Playgroud)

匹配/ api/test OR/api/test /.就目前而言,它只匹配/ api/test,如果我将其切换为:

Spark.get("/api/test/", (req, res) -> {
            return "TEST OK";
        });
Run Code Online (Sandbox Code Playgroud)

它只匹配 /api/test/

java routes spark-java spark-framework

11
推荐指数
2
解决办法
1547
查看次数