Wallet file not specified (must request wallet RPC through /wallet/<filename> uri-path). BitcoinJSONRPCClient异常、及其他异常
1、异常信息 Wallet file not specified (must request wallet RPC through /wallet/<filename> uri-path)
Exception in thread "main" wf.bitcoin.javabitcoindrpcclient.BitcoinRPCException: RPC Query Failed (method: getbalance, params: [], response code: 500 responseMessage Internal Server Error, response: {"result":null,"error":{"code":-19,"message":"Wallet file not specified (must request wallet RPC through /wallet/<filename> uri-path)."},"id":"1"}
at wf.bitcoin.javabitcoindrpcclient.BitcoinJSONRPCClient.query(BitcoinJSONRPCClient.java:236)
at wf.bitcoin.javabitcoindrpcclient.BitcoinJSONRPCClient.getBalance(BitcoinJSONRPCClient.java:294)
at com.lpz.exchange.biz.TestBitcoinCore.javaBitcoin(TestBitcoinCore.java:46)
at com.lpz.exchange.biz.TestBitcoinCore.main(TestBitcoinCore.java:74)
Process finished with exit code 1
原因:由于bitcoin core 客户端里面创建了多个钱包,java连接的时候未指明使用某个钱包而产生的
解决: URL url = new URL("http://user:password@127.0.0.1:18332"); 在连接后面加上钱包名称
Eq: 我有个钱包名叫:lpz
那么连接就因该是: URL url = new URL("http://user:password@127.0.0.1:18332/wallet/lpz"); 在连接后面加上钱包名称
钱包里面有个默认的钱包,连接是就不加名称 URL url = new URL("http://user:password@127.0.0.1:18332/wallet/");

2、异常信息 Error: Please enter the wallet passphrase with walletpassphrase first.
Exception in thread "main" wf.bitcoin.javabitcoindrpcclient.BitcoinRPCException: RPC Query Failed (method: dumpprivkey, params: [2N1y1DGtXUbajM5SWyo9yRgiWAqQcPUyVEA], response code: 500 responseMessage Internal Server Error, response: {"result":null,"error":{"code":-13,"message":"Error: Please enter the wallet passphrase with walletpassphrase first."},"id":"1"}
at wf.bitcoin.javabitcoindrpcclient.BitcoinJSONRPCClient.query(BitcoinJSONRPCClient.java:236)
at com.lpz.exchange.biz.TestBitcoinCore.javaBitcoin(TestBitcoinCore.java:56)
at com.lpz.exchange.biz.TestBitcoinCore.main(TestBitcoinCore.java:74)
Process finished with exit code 1
原因:调用dumppivkey (获取私钥) 的时候需要先输入钱包密码,没有输入密码就调用此方法抛出的异常
解决:在调用获取私钥方法之前输入钱包密码:bitcoinClient.walletPassPhrase("你的钱包密码",超时时间);
Eq:
bitcoinClient.walletPassPhrase("lpz",60);
String addressPrivateKey=bitcoinClient.query("dumpprivkey","2N1y1DGtXUbajM5SWyo9yRgiWAqQcPUyVEA").toString();
logger.info("获取地址私钥:"+ addressPrivateKey);
还有其它的方法也是需要输入密码的,主要是看它提示什么,或者你在bitcoin core控制台线调用一下方法
Wallet file not specified (must request wallet RPC through /wallet/<filename> uri-path). BitcoinJSONRPCClient异常、及其他异常的更多相关文章
- Warning: require(): open_basedir restriction in effect. File(/www/wwwroot/../thinkphp/start.php) is not within the allowed path(s):
Warning: require(): open_basedir restriction in effect. File(/www/wwwroot//../thinkphp/start.php) is ...
- input file 获取不到Request.Files 解决办法
<input type="file" name="xxxxxxx"/>必须有“name”属性,否则在后台代码中用Request.Files是取不到值 ...
- jquery file upload 后台收到的文件名中文乱码, filename中文乱码
在jQuery File Upload.js文件里,在以下这个js中有个成员叫做 _initXHRData, 是一个function, 在这个function的最后部分有一个if-else分支,如下:
- File.Copy的时候Could not find a part of the path
https://developercommunity.visualstudio.com/content/problem/378265/filecopy-did-not-throw-the-correc ...
- 图片上传安全性问题,根据ContentType (MIME) 判断其实不准确、不安全
图片上传常用的类型判断方法有这么几种---截取扩展名.获取文件ContentType (MIME) .读取byte来判断(这个什么叫法来着?).前两种都有安全问题.容易被上传不安全的文件,如木马什么的 ...
- Gradle构建Java Web应用:Servlet依赖与Tomcat插件(转)
Gradle的官方tutorial介绍了构建Java Web应用的基本方法.不过在使用Servlet做上传的时候会碰到问题.这里分享下如何通过Servlet上传文件,以及如何使用Gradle来构建相应 ...
- electron的艰难安装之旅
最近对前端开发很感兴趣,抽空研究了下前段的开发工具,发现比较流行的是sublime,atom,vscode等, 由于一直以来从事.net开发所以对vscode很感兴趣,在vscode的安装配置过程偶然 ...
- FORM级别和数据库级别的Trace
metalink上的文章较全的,中文的可参考我的博客EBS开发技术之trace http://blog.csdn.net/cai_xingyun/article/details/17250971 ...
- Jetty 开发指南:嵌入式开发示例
Jetty具有嵌入各种应用程序的丰富历史. 在本节中,我们将向您介绍我们的git存储库中的embedded-jetty-examples项目下的一些简单示例. 重要:生成此文档时,将直接从我们的git ...
随机推荐
- 打包APK出现org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:lintVitalRelease'.
AndroidS Studio打包APK时出现问题:org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':a ...
- 一、VIP课程:互联网工程专题 05-快速掌握Jenkins原理与核心功能
第五课:快速掌握jenkins核心功能.docx 2.164 (2019-02) and newer: Java 8 or Java 11 一.jenkins 概述与环境配置 知识点: 关于可持续化集 ...
- Express ~ 获取表单 get 和 post 提交方式传送参数的对比
一,获取 get 提交的参数 var id = req.query.id || '' 二,获取 post 提交的参数 var name = req.body.name || ''
- BZOJ:1927: [Sdoi2010]星际竞速
题解:最小费用流+二分图模型: 左边表示出这个点,右边表示入这个点: #include<iostream> #include<cstdio> #include<cstri ...
- maven的理解和使用
一.maven是什么? maven是项目管理工具 二.maven为什么要用? 在做开发的时候常常会用到外部的工具包(jar包),这就需要你一个一个的去他们的官网下工具包,然后在项目里依赖他们,比较的麻 ...
- centos7-DNS(主从)
一.安装DNS. 本机ip:192.168.1.3 [root@localhost ~]# yum -y install bind bind-utlis 二.编辑配置文件. [root@localho ...
- 好文推荐:终于有人把Elasticsearch原理讲透了
专注于Java领域优质技术,欢迎关注 作者:channingbreeze 转自公号:互联网侦察 小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了. ...
- 一天一个设计模式——Prototype 原型模式
一.模式说明 看了比较多的资料,对原型模式写的比较复杂,个人的理解就是模型复制,根据现有的类来直接创建新的类,而不是调用类的构造函数. 那为什么不直接调用new方法来创建类的实例呢,主要一个原因是如果 ...
- CountDownLatch和CyclicBarrier和Semaphore最通俗形象解释
应该还有好多同学对这三个的区别比较模糊,网络上其他文章说的也比较专业化.所以我在这里举个例子说明这三个的区别. 我们假定有一场百米比赛,比赛包括十个运动员和一个裁判,每个运动员和每个裁判都是一个线程, ...
- HTML5新标签使用及CSS选择器(伪类)
这些标签能够让搜索引擎更直接的解析页面内容. <header></header>语义:文档或者页面的头部 <nav></nav>语义:导航这两者不是组合 ...