小编Dee*_*Two的帖子

如何忽略PKIX路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException?

尝试将请求发布到http服务器时,我收到以下异常:

这是我使用的代码

URL url = new URL(
        "https://www.abc.com");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();

conn.setRequestMethod("GET");

conn.setDoOutput(true);

DataOutputStream wr = new DataOutputStream(conn.getOutputStream());
// wr.writeBytes(params);
wr.flush();
wr.close();

BufferedReader br = new BufferedReader(new InputStreamReader(
        conn.getInputStream()));
String line = null;
while ((line = br.readLine()) != null) {
    System.out.println(line);
}
Run Code Online (Sandbox Code Playgroud)

这是一个例外:

Exception in thread "main" javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1731)
    at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:241)
    at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:235)
    at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1206)
    at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:136)
    at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:593)
    at …
Run Code Online (Sandbox Code Playgroud)

java ssl certificate ssl-certificate

63
推荐指数
6
解决办法
30万
查看次数

无法从Facebook获取访问令牌.得到OAuthException说"验证验证码时出错"

我正在使用java,我的演示应用程序的目的很简单:更新用户状态.我按照http://developers.facebook.com/docs/authentication页面上的服务器端流程进行了操作.我得到了auth对话框,facebook引导回调网址,我在回调页面中获得了代码.然后,当我尝试生成访问令牌时,我失败了.

在指南页面中,它表示可以使用以下网址生成访问令牌:

https://graph.facebook.com/oauth/access_token?
     client_id=YOUR_APP_ID&redirect_uri=YOUR_URL&
     client_secret=YOUR_APP_SECRET&code=THE_CODE_FROM_ABOVE
Run Code Online (Sandbox Code Playgroud)

但是在我的环境中发生的是我收到以下错误消息:

{
   "error": {
      "type": "OAuthException",
      "message": "Error validating verification code."
   }
}
Run Code Online (Sandbox Code Playgroud)

我很确定每个参数都是正确的,因为如果我更改了client_id值或client_secret参数,我将收到不同的错误消息.代码参数是我从facebook回调中得到的.所以这应该是正确的,对吧?真的无法弄清楚是什么问题....

对此有何想法?我被困在这里......

facebook token

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

在YARN上Spark的日志在哪里?

我是新来的.现在我可以在纱线上运行spark 0.9.1(2.0.0-cdh4.2.1).但执行后没有日志.

以下命令用于运行spark示例.但是,在正常的MapReduce作业中,在历史记录服务器中找不到日志.

SPARK_JAR=./assembly/target/scala-2.10/spark-assembly-0.9.1-hadoop2.0.0-cdh4.2.1.jar \
./bin/spark-class org.apache.spark.deploy.yarn.Client --jar ./spark-example-1.0.0.jar \
--class SimpleApp --args yarn-standalone  --num-workers 3 --master-memory 1g \
--worker-memory 1g --worker-cores 1
Run Code Online (Sandbox Code Playgroud)

我在哪里可以找到logs/stderr/stdout?

有什么地方可以设置配置吗?我确实找到了控制台的输出说:

14/04/14 18:51:52 INFO客户端:ApplicationMaster的命令:$ JAVA_HOME/bin/java -server -Xmx640m -Djava.io.tmpdir = $ PWD/tmp org.apache.spark.deploy.yarn.ApplicationMaster --class SimpleApp --jar ./spark-example-1.0.0.jar --args'yarn-standalone' - worker-memory 1024 --worker-cores 1 --num-workers 3 1> <LOG_DIR>/stdout 2> <LOG_DIR>/stderr

在这一行,请注意 1> $LOG_DIR/stdout 2> $LOG_DIR/stderr

LOG_DIR可以在哪里设置?

logging hadoop cloudera hadoop-yarn apache-spark

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

使用Mercurial HG时,如何获取最新代码?

我是Mercurial HG的新手.我的朋友创建了一个回购,我将使用它.我安装了TortoiseHG并尝试获取最新代码.我发现在使用克隆操作时,它会将所有代码拉到我的本地,包括历史记录(我是不是?).这不是我需要的.我只是想得到最新的代码.有没有这个操作?

mercurial

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

JVM中的 - ,-X params和-XX params有什么区别?

JVM有很多参数.一些以 - 开头,例如-server,-client.有些以-X开头,例如-Xms,-Xmx.一些以-XX开头,例如-XX:PermSize,-XX:UseParallelGC.

所以这是我的问题.由于这些参数不重复,为什么要从这么多不同的前缀开始呢?为什么不使用" - ".我的猜测是有一些标准.-XX参数是扩展设置,并非所有JVM impls都支持.是这样吗?

jvm

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

如何用snappy解压缩hadoop减少输出文件?

我们的hadoop集群使用snappy作为默认编解码器.Hadoop作业减少输出文件名就像part-r-00000.snappy.JSnappy无法解压缩文件bcz JSnappy要求文件以SNZ开头.减少输出文件以某种方式以某些字节0开始.

我怎么能解压缩文件?

hadoop snappy

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

maven不使用pom.xml中指定的存储库?

我正在使用Maven3编译HBase.

来自github https://github.com/cloudera/hbase/blob/cdh4-0.94.2_4.2.1/pom.xml的pom 指定了一些存储库来提供一些外部jar.但maven 3并没有从这些存储库中寻找罐子而只是抛出异常,说从镜子中找不到罐子.

这是pom的存储库.

  <repositories>
<repository>
  <id>cdh.repo</id>
  <url>https://repository.cloudera.com/artifactory/cloudera-repos</url>
  <name>Cloudera Repositories</name>
  <snapshots>
    <enabled>false</enabled>
  </snapshots>
</repository>

<repository>
  <id>cdh.snapshots.repo</id>
  <url>https://repository.cloudera.com/artifactory/libs-snapshot-local</url>
  <name>Cloudera Snapshots Repository</name>
  <snapshots>
    <enabled>true</enabled>
  </snapshots>
  <releases>
    <enabled>false</enabled>
  </releases>
</repository>
<repository>
  <id>apache release</id>
  <url>https://repository.apache.org/content/repositories/releases/</url>
</repository>
<repository>
  <id>apache non-releases</id>
  <name>Apache non-releases</name>
  <url>http://people.apache.org/~stack/m2/repository</url>
  <snapshots>
    <enabled>false</enabled>
  </snapshots>
  <releases>
    <enabled>true</enabled>
  </releases>
</repository>
<repository>
  <id>java.net</id>
  <name>Java.Net</name>
  <url>http://download.java.net/maven/2/</url>
  <snapshots>
    <enabled>false</enabled>
  </snapshots>
  <releases>
    <enabled>true</enabled>
  </releases>
</repository>
<repository>
  <id>codehaus</id>
  <name>Codehaus Public</name>
  <url>http://repository.codehaus.org/</url>
  <snapshots>
    <enabled>false</enabled>
  </snapshots>
  <releases>
    <enabled>true</enabled>
  </releases>
</repository>
<repository>
  <id>repository.jboss.org</id>
  <url>http://repository.jboss.org/nexus/content/groups/public-jboss/</url>
  <snapshots>
    <enabled>false</enabled>
  </snapshots>
</repository>
<repository>
  <id>ghelmling.testing</id> …
Run Code Online (Sandbox Code Playgroud)

repository maven

13
推荐指数
1
解决办法
6389
查看次数

logback是否有NullAppender?

我知道NullAppenderlog4j中有一个.但我在logback中找不到appender.有没有更好的方法来忽略logback中的所有日志?

java logging logback

9
推荐指数
2
解决办法
4580
查看次数

如何在Android UI线程异步中执行一些代码?

我是Android开发的新手.我已经在Swing和SWT工作了好几年.Swing和SWT都有一个在UI线程同步和异步中执行代码的策略.典型的用法是在一个线程中做一些耗时人员,然后在UI线程异步中显示结果.

所以我的问题是,Android中有类似的策略吗?这是我的代码.参数runnable是一些耗时代码.此方法将在执行期间显示等待对话框,然后EXPECT在完成后显示Toast.但Toast需要在UI线程中显示.那怎么办呢?

    public static void showWaitingDialog(final Activity parent, final Runnable runnable, String msg) {

    if (StringUtils.isEmpty(msg)) {
        msg = "processing...";
    }

    final ProgressDialog waitingDialog = ProgressDialog.show(parent, "Please Wait...", msg, true);

    // execute in a new thread instead of UI thread
    ThreadPoolUtil.execute(new Runnable() {

        public void run() {
            try {
                // some time-consume operation
                runnable.run();
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                waitingDialog.dismiss();
            }
            // TODO: How to display a Toast message here? execute some code in UI Thread. …
Run Code Online (Sandbox Code Playgroud)

android ui-thread android-asynctask

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

将大量JAR添加到类路径中时,Java File IO性能下降了30%以上

测试代码:

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.Map.Entry;

public class ReadLine {

    /**
     * @param args
     * @throws IOException
     */
    public static void main(String[] args) throws IOException {
        System.getenv();
        System.getProperties();

        BufferedReader br = new BufferedReader(new FileReader(args[0]), 2 << 17);
        int lineTotal = 0;
        int lineDone = 0;
        long start = System.currentTimeMillis();
        long totalSincePre = System.currentTimeMillis();
        while (br.readLine() != null) {
            lineTotal++;
            if (lineTotal % 100000 == 0) {
                long end = System.currentTimeMillis();
                System.out.println("total speed=" + lineTotal / (end - …
Run Code Online (Sandbox Code Playgroud)

java io file

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