Friday, July 12, 2019

Linux important commands

sudo :
Switch to super user
sudo su
chmod :



ssh : protocol to log into remote system.

grep : Global Regular Expression Print

nohup :
example : run java without holding the current session.

nohup java -jar a.jar &




Tuesday, July 2, 2019

ReferenceError: MongoClient is not defined

Hi Guys ,

In this blog I will share information related to error : ReferenceError: MongoClient is not defined .


This error is related to the node.js code which is trying to connect to the database . To fix this check the following lines of code highlighted in yellow  . You need to make sure module mongodb is imported and the MongoClient is referenced using the variable .






var mongo = require('mongodb');
var url = "mongodb://localhost:27017/qanda";
mongo.MongoClient.connect(url, function(err, db) {
if (err) throw err;
console.log("Database created!");
db.close();
});
Please make changes to the code and retest . Hope this will help you in resolving this issue .

MongoNetworkError: failed to connect to server MongoNetworkError: connect ECONNREFUSED


Hi Guys ,

You might have faced an error like MongoNetworkError: failed to connect to server [localhost:27017] on first connect [MongoNetworkError: connect ECONNREFUSED 127.0.0.1:27017]

We generally face this error when the database server is down , if you bring the database server up you will not face this error .

The full error is as follows :


(node:15564) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
F:\\study\nodejs\node_modules\mongodb\lib\topologies\server.js:240
            throw err;
            ^

MongoNetworkError: failed to connect to server [localhost:27017] on first connect [MongoNetworkError: connect ECONNREFUSED 127.0.0.1:27017]
    at Pool.<anonymous> (F:\\study\nodejs\node_modules\mongodb-core\lib\topologies\server.js:431:11)
    at emitOne (events.js:116:13)
    at Pool.emit (events.js:211:7)
    at connect (F:\\study\nodejs\node_modules\mongodb-core\lib\connection\pool.js:557:14)
    at makeConnection (F:\\study\nodejs\node_modules\mongodb-core\lib\connection\connect.js:39:11)
    at callback (F:\\study\nodejs\node_modules\mongodb-core\lib\connection\connect.js:261:5)
    at Socket.err (F:\\study\nodejs\node_modules\mongodb-core\lib\connection\connect.js:286:7)
    at Object.onceWrapper (events.js:315:30)
    at emitOne (events.js:116:13)
    at Socket.emit (events.js:211:7)


The code snipped to connect to mongo db is as follows :


var mongo = require('mongodb');
var url = "mongodb://localhost:27017/qanda";
mongo.MongoClient.connect(url, function(err, db) {
if (err) throw err;
console.log("Database created!");
db.close();
});


Sunday, June 9, 2019

Groovy Interview Questions

Important Interview Question in Groovy .


  • Compare Java with Apache Groovy 


  1. Groovy is a scripting language 
  2. Less syntax
  3. default access modifier is public 
  4. automatic getters and setters
  5. does not support ARM introduced in java 7
  6. allows variable substitution inside double quotes 
  7. does not support anonymous inner class , lambda , use closure instead .
  8. groovy supports operator overloading 

  • What is AST transformations.
 the ability to customize the Abstract Syntax Tree representing your programs before the compiler walks this tree to generate Java bytecode .
  • Explain closure in groovy
A closure in Groovy is an open, anonymous, block of code that can take arguments, return a value and be assigned to a variable

{ [closureParameters -> ] statements }

  • Explain GRAPE 
Grape stands for the Groovy Adaptable (Advanced) Packaging Engine
Grape helps you download and cache external dependencies from within your script with a set of simple annotations.

@Grab('org.apache.httpcomponents:httpclient:4.2.1')

  • What is the use of @GrabResolver 
By default GRAPE uses Maven Central Repository , if we need to add our own repository we can use  @GrabResolver  .





ec2-user@ec2 Permission denied