Menu

Citizenship Amendment Bill 2019 | India

Some pro BJP and anti socialist and anti nationalist media groups and  Individual conducting poll regarding Citizen Amendment Act 2019(CAA) and National Register of Citizens(NRC) on twitter. And all of them are getting pratfall from Citizen of India and world.
We will see the result of few twitter polls held by people and media.

Republic poll manged by Republic TV. Here what citizen of India responded with.


A fake journalist and agent of BJP also come forward and ask people to vote on CAA(Citizenship Amendment bill 2019). here what people of India said to him.




Mr Amit Malviya, wants to prove that, prominent Indian journalist Rajdeep Sardesia, who speaks the voice of people is a member of ISIS. Here is the response he got from Indians.


Editors guild of India condemn this poll and use strict words against Amit Malviya.


Now see the trends on twitter. What is going on here, people are using #IndiaSupportsCCA, what is  CCA stand for? The one who doesn't know the abbreviation, then how they claim they know the CAA(Citizenship Amendment bill 2019) very well? Do you think they have read even a single line written in this Act?


Purposed tax slab FY 2020-21

Government of India, finance ministry may revised the income tax slab in upcoming finance budget 2020, which is going to declare in parliament in first week of February 2020, by finance minister Nirmala Sitaraman. It has been said by reporting agencies that new tax slab will be relaxing for the tax payers.

Current income tax slab is, those who earning up to Rs 2.5 lakh per year are exempted from paying income tax while individuals earning between Rs 2.5-5 lakh attract a 5% tax rate and those in the income group of Rs 5-10 lakh are taxed at 20%. Individuals earning above Rs 10 lakh have to pay tax at 30%. Those in the income bracket of Rs 1 crore, Rs 2 crore and Rs 5 crore come under a three-layered surcharge.

Akhilesh Ranjan, a former member of the Central Board of Direct Taxes (CBDT), suggested a new tax slab which will benefit the middle and upper middle class tax payers. Although new tax slab is not yet confirmed and released by income tax department or finance ministry.

Purposed tax slab may have an additional slab of 10% of income tax for person who earn between 5 to 10 Lakh.

Those person who are earning more than Rs 50 lakh in a FY have to pay an additional surcharge between 10% to 37%, depending on their income. The proposed slabs are currently being reviewed by a committee for direct taxes.

New income tax slabs for 2020


Income
Existing Tax Rate
Proposed tax rate
Up to ₹2.5 lakh
Nil
Nil
₹2.5 lakh to ₹5 lakh
Nil
10%
₹5 lakh to ₹10 lakh
10%
10%
₹10 lakh - ₹20 lakh
30%
20%
₹20 lakh - ₹ 2 crore
30%
30%
₹2 crore +
30%
35%

Above is the new purposed tax slab for FY 2020-21, but officially not yet confirmed. The relaxation which was given last year for tax payer who are earning less than 5 Lakh will be also revoked.

References:

No Java virtual machine was found

Error: A Java runtime environment (JRE) or Java Development Kit (JDK) must be available in order to run Eclipse. No Java virtual machine was found after searching the following locations: C:\Program Files\Java\jre1.8.0_221\bin




Cause of error: when we update the Java version, or install a new version of Java in machine.


Solution: We need to manually update path of current JRE or JDK path in Eclipse setting file.


Where I can find the Eclipse setting file?

Directory: C:\Users\rashidjorvee\eclipse\jee-2019-06\eclipse\eclipse.ini
Below is the sample of eclipse.ini file. You may open this file using notepad and notepad++.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
-startup
plugins/org.eclipse.equinox.launcher_1.5.400.v20190515-0925.jar
--launcher.library
C:\Users\username\.p2\pool\plugins\org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.1000.v2019882098-2010
-product
org.eclipse.epp.package.jee.product
-showsplash
org.eclipse.epp.package.common
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vm
C:/Program Files/Java/jre1.8.0_221/bin
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Dosgi.instance.area.default=@user.home/eclipse-workspace
-XX:+UseG1GC
-XX:+UseStringDeduplication
--add-modules=ALL-SYSTEM
-Dosgi.requiredJavaVersion=1.8
-Dosgi.dataAreaRequiresExplicitInit=true
-Xms256m
-Xmx1024m
--add-modules=ALL-SYSTEM
-Declipse.p2.max.threads=10
-Doomph.update.url=http://download.eclipse.org/oomph/updates/milestone/latest
-Doomph.redirection.index.redirection=index:/->http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/

In eclipse.ini file please update the correct JRE or JDK path at line number 13 under the -vm (virtual machine) and then save the file.

This will fix your issue and you will be now able to open the eclipse IDE without any issue.

Where to find the installed JDK and JRE in machine?

In windows inside the profile files >> Java, you will find the installed JRE and JDK.

e.g. path of a JDK version 1.8 : C:\Program Files\Java\jdk1.8.0_221\bin

Multifield acs-commons-nested="NODE_STORE" not saving properties into nodes

While working with multifield we use ACS commons multifield property acs-commons-nested="NODE_STORE" to store the values of the fields into nodes instead of JSON or array type property values. Till AEM 6.3  acs-commons-nested property was working fine but with the later versions of AEM  acs-commons-nested has been deprecated. And to achieve the same we can be used granite UI multifield instead of old foundation multifield. 

Problem Statement

When you migrated your project and you came with this problem where your multifield component is not storing the authored content into item nodes then we have to fix it with the below resolution.

Resolution

Since acs-commons-nested has been deprecated now we have to use a different field that supports this approach of storing data. This way we do not have to modify our existing model classes. Make the following changes in your existing multifield component. 

1. Update the multifield from foundation multifield to Granite UI multifield. 

sling:resourceType="granite/ui/components/foundation/form/multifield" to sling:resourceType="granite/ui/components/coral/foundation/form/multifield"

2. Add a property on mutifield composite="{Boolean}true"

After doing the above changes in your component, now author your component and validate the storage of authored content under jcr:content of the page and component model class.


References

https://adobe-consulting-services.github.io/acs-aem-commons/features/ui-widgets/multifield-extension/index.html

https://www.adobe.io/experience-manager/reference-materials/6-5/granite-ui/api/jcr_root/libs/granite/ui/components/coral/foundation/form/multifield/index.html


Port may already be in use

While running any application you may face an issue, that default port or port which our application required to start the process is occupied by some other process or service. In this article we will see how to fix this issue and how we can terminate the active process and service from that port and make it available for our new application. 
below are the steps which we need to follow for windows machine to free the port number.

Error log:

2019-11-22 23:38:18.329 ERROR 27240 --- [  restartedMain] o.apache.catalina.core.StandardService   : Failed to start connector [Connector[HTTP/1.1-8080]]

org.apache.catalina.LifecycleException: Failed to start component [Connector[HTTP/1.1-8080]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:167) ~[tomcat-embed-core-8.5.29.jar:8.5.29]
at org.apache.catalina.core.StandardService.addConnector(StandardService.java:225) ~[tomcat-embed-core-8.5.29.jar:8.5.29]
at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.addPreviouslyRemovedConnectors(TomcatWebServer.java:256) [spring-boot-2.0.1.RELEASE.jar:2.0.1.RELEASE]
at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.start(TomcatWebServer.java:198) [spring-boot-2.0.1.RELEASE.jar:2.0.1.RELEASE]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.startWebServer(ServletWebServerApplicationContext.java:300) [spring-boot-2.0.1.RELEASE.jar:2.0.1.RELEASE]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.finishRefresh(ServletWebServerApplicationContext.java:162) [spring-boot-2.0.1.RELEASE.jar:2.0.1.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:553) [spring-context-5.0.5.RELEASE.jar:5.0.5.RELEASE]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:140) [spring-boot-2.0.1.RELEASE.jar:2.0.1.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759) [spring-boot-2.0.1.RELEASE.jar:2.0.1.RELEASE]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:395) [spring-boot-2.0.1.RELEASE.jar:2.0.1.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:327) [spring-boot-2.0.1.RELEASE.jar:2.0.1.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1255) [spring-boot-2.0.1.RELEASE.jar:2.0.1.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1243) [spring-boot-2.0.1.RELEASE.jar:2.0.1.RELEASE]
at jobtrees.JobTreesApplication.main(JobTreesApplication.java:25) [classes/:na]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_221]
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_221]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_221]
at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.8.0_221]
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) [spring-boot-devtools-2.0.1.RELEASE.jar:2.0.1.RELEASE]
Caused by: org.apache.catalina.LifecycleException: Protocol handler start failed
at org.apache.catalina.connector.Connector.startInternal(Connector.java:1020) ~[tomcat-embed-core-8.5.29.jar:8.5.29]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ~[tomcat-embed-core-8.5.29.jar:8.5.29]
... 18 common frames omitted
Caused by: java.net.BindException: Address already in use: bind
at sun.nio.ch.Net.bind0(Native Method) ~[na:1.8.0_221]
at sun.nio.ch.Net.bind(Unknown Source) ~[na:1.8.0_221]
at sun.nio.ch.Net.bind(Unknown Source) ~[na:1.8.0_221]
at sun.nio.ch.ServerSocketChannelImpl.bind(Unknown Source) ~[na:1.8.0_221]
at sun.nio.ch.ServerSocketAdaptor.bind(Unknown Source) ~[na:1.8.0_221]
at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:210) ~[tomcat-embed-core-8.5.29.jar:8.5.29]
at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1150) ~[tomcat-embed-core-8.5.29.jar:8.5.29]
at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:591) ~[tomcat-embed-core-8.5.29.jar:8.5.29]
at org.apache.catalina.connector.Connector.startInternal(Connector.java:1018) ~[tomcat-embed-core-8.5.29.jar:8.5.29]
... 19 common frames omitted

2019-11-22 23:38:18.343  INFO 27240 --- [  restartedMain] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
2019-11-22 23:38:18.362  INFO 27240 --- [  restartedMain] ConditionEvaluationReportLoggingListener : 

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2019-11-22 23:38:18.364 ERROR 27240 --- [  restartedMain] o.s.b.d.LoggingFailureAnalysisReporter   : 

***************************
APPLICATION FAILED TO START
***************************

Description:

The Tomcat connector configured to listen on port 8080 failed to start. The port may already be in use or the connector may be misconfigured.

Action:

Verify the connector's configuration, identify and stop any process that's listening on port 8080, or configure this application to listen on another port.

How to fix?

To fix this issue and vacant the port you have to kill and stop the current service which is active and running on this port. to do so in your windows machine please follow the following steps.
Step1: Open command prompt(CMD).
Step2: Find the process ID which occupied the port. run the below command to find the PID. to know more on this you may refer our aticle find PID using port number.
netstat -aon | findstr <port number>
let say we want to find the active process ID which is running on port number 4502, hence we will run the below command. 
netstat -aon | findstr 4502
How to find process ID
Find process ID(PID)

Step3: after getting the process ID (PID) you may need to verify which service name or want to know the name of service, then execute the below command.
tasklist /fi "pid eq 8884"
Here, image name is the name of the service. 
How to find the service name using PID
Service name

Step4:
Now we need to stop or kill this active service so we could use another service on same port. To kill a service please run the below command.

taskkill /PID 8884 /F
How to remove an active service from a port.
kill active process/service

We have killed the process and service has been terminated it means now port 4502 is empty and no process or service is currently using that port. We may verify the same by running the command from step2 again.

if you have any query and suggestion, please feel free to pass.


How many hours in a complete day?

Question: Did you know how many hours we have in day? 
or 
Question: How many hours in a complete day? 
or 
Question: How many hours actually in day? 
or 
Question: Are all days exactly 24 hours?
or
Question: How many hours in a day?

Answer: A complete day is twenty three hours, fifty six minutes and four thousand seconds. that is, 23:56:4000 (hh:mm:ss)

How to cherry pick multiple commits from a branch to other?

It is very common practice to pull push and merge the changes from one branch to other branch for developer. Today we are going to see how we could cherry pick changes from one branch to other branch or from feature or working branch to master. Some times we come at a situation where we do not want to merge the complete branch into another branch, instead of complete merge or pull we just want to merge few commits from one branch to another, for that we have cherry pick option in git.

for example we are currently working on branch feature/fix01, and n commits are available on fix01 branch.
Now we want to cherry pick only commit A and B to master branch. to do so, please do the following steps.

Step 1: Open git bash.
git checkout fix01
git log
 $git log command will show all commits, with commit details. From here you can take the commit ID. Alternate to get the commit ID is from git UI, check for the commit SHA. As shown in below screenshot.

 
Step 2: Now checkout the master branch where we need to push the commits.
git checkout master
Step 3: Now run the cherry pick command
git cherry-pick a001 b001 // here a001 and b001 is commit IDs for A and B commit respectively.
if cherry-pick command didn't run successfully and halted due to some conflict, then go to repo and fix the conflicts and then came back to git bash and run the cherry-pick continue command.
git cherry-pick --continue

if you want to stop the cherry-pick or end the process, then run cherry-pick abort command.
git cherry-pick --abort

Step 4: If you cherry-pick was successful then run the git push to move the commits.
git push origin master/master
Step 5: Verify the changes.

References:




Building blocks in AEM

Building blocks is the feature associated with experience fragment in which we group two or more experience fragment together.
To understand it better we have to first understand the experience fragment. Experience fragment is a page or post, which we create using multiple small contents or grouping multiple content together in a template so we can easily reuse and publish that content. Experience fragment can have CTA(cal to action), images, text and inputs.

Why building blocks required?

Suppose we have a requirement where we need to show two or more experience fragment together as a single experience fragment, then using the building blocks we can group those experience fragment and  drop and show that building blocks as a single experience fragment in your post and page.

To make it more simple, building blocks is for combining two or more experience fragment into a single experience fragment.

How to create building blocks?





Failure authenticating with BASIC 'Sling (Development)'

Issue: When we try to replicate anything from author to publisher I am getting below error. and not even on any replication it keep printing the log in error.log file automatically after an interval. What could be the cause of this? 


24.10.2019 11:31:05.942 *INFO* [oak-repository-executor-1] com.adobe.granite.repository Service [34344, [org.apache.jackrabbit.oak.api.jmx.SessionMBean]] ServiceEvent REGISTERED
24.10.2019 11:31:20.180 *INFO* [sling-default-2812-com.day.cq.replication.impl.ReverseReplicator.22529] org.apache.commons.httpclient.auth.AuthChallengeProcessor basic authentication scheme selected
24.10.2019 11:31:20.180 *INFO* [sling-default-2812-com.day.cq.replication.impl.ReverseReplicator.22529] org.apache.commons.httpclient.HttpMethodDirector Failure authenticating with BASIC 'Sling (Development)'@localhost:4503
24.10.2019 11:31:24.323 *INFO* [oak-repository-executor-1] com.adobe.granite.repository Service [34345, [org.apache.jackrabbit.oak.api.jmx.SessionMBean]] ServiceEvent REGISTERED


Resolution: This error message you are getting because, AEM author replication agent is unable to communicate with publisher instance due to bad credential (username and password). You might change the password of admin user in publisher and forget to update the password on default author agent. Once you will update the valid authentication credential in default author replication agent this error will be no more logged in the error.log file.

By default AEM system keep generating events and try to transport the same to publisher instance, every time it send the replication request to replication agent the authentication get failed thats why this log is get printed after a certain interval. 

Reference:

  1. https://helpx.adobe.com/in/experience-manager/6-3/sites/deploying/using/replication.html

How to put escape character in SQL query


SELECT * FROM SQL_TUTORIAL WHERE SQL_NAME like UPPER('%'||vSearchItem||'%')

Koi toh hai jo nizam-e-hasti chala raha hai

Koi toh hai, Koi toh hai jo nizam-e-hasti chala raha hai, 
Wahi khuda hai, wahi khuda hai


Dikhayi bhi na de jo nazar bhi, woh aa raha hai

Wahi khuda hai, wahi khuda hai


Nazar bhi rakhe sma'atein bhi,

Woh jan leta hain neeyatein bhi,
Jo khana-e-la Shaoor mein, 
Jagmagaa raha hai,
Wahi khuda hai, wohi khuda hai


Talash usko na kar buton mein, 

Woh hai badalti ruton mein


Jo din ko raat aur raat ko din banaa raha hai

Wahi khuda hai, wahi khuda hai


Koi hai toh hai jo nizame hasti chala raha hai

Wahi khuda hai, wohi khuda hai


Dikhayi bhi na de jo nazar bhi, woh aa raha hai

Wahi khuda hai, wahi khuda hai


Kisi ko tajo wakar bakshe,

Kisi ko zillat ke khar bakhshe,


Woh sab ke haathon pe,

Mohar-e-Qudrat laga raha hai
Wahi khuda hai, wohi khuda hai


Koi toh hai jo nizam-e - hasti chalaa raha hai

Khuda hai


Yeh chand taare hain noor usi ka

Hai har jagah pe zahoor usi ka
Yeh phool kaliyan 
Yeh sabze patte sajaa raha hai
Wahi khuda hai, wahi khuda hai


Koi toh hai jo nizam-e-hasti chala raha hai

Wahi khuda hai, wohi khuda hai


Koi toh hai jo nizame hasti chala raha hai



Kyun mangta hai tu is jahan se?

Tujhe milega khuda ke ghar se


Nabi sadqe jo apne haathon loota raha hai

Wahi khuda hai, wohi khuda hai


Dikhayi bhi na de jo nazar bhi woh aa raha hai

Wahi khuda hai


Koi toh hai jo nizame hasti chalaa raha hai 

Wahi khuda hai, Wohi khuda hai


Allahhumma salli ala muhammadin, 

Wa ala aalihi wa sahbihi wa sallim


Allahhumma salli ala muhammadin, 

Wa ala aalihi wa sahbihi wa sallim


Written by - Muzafar Warsi


-------------------------------------------------------
کوئی تو ہے جو نظام ہستی چلا رہا ہے، وہی خدا ہے
دکھائی بھی جو نہ دے نظر بھی جو آ رہا ہے، وہی خدا ہے 


تلاش اس کو نہ بتوں مے وہ ہے بدلتی ہوئی رتوں میں 
جو دن کو رات اور رات کو دن بنا رہا ہے، وہی خدا ہے


نظر بھی رکھے سماعتیں بھی وہ جان بھی لیتا ہے نیتیں بھی 
جو خانہ لاشعور میں جگمگا رہا ہے، وہی خدا ہے 


کسی کو تاج وقار بخشے کسی کو ذلّت کے غار بخشے
جو سب کے ماتھوں پہ مہر قدرت لگا رہا ہے، وہی خدا ہے 


سفید اس کا سیاہ اس کا نفس نفس ہے گواہ اس کا 
جو شعلہ جان جلا رہا ہے بجھا رہا ہے، وہی خدا ہے 


کوئی تو ہے جو نظام ہستی چلا رہا ہے، وہی خدا ہے 

- مظفر وارثی -
------------------------------------------------------
कोई तो है जो निज़ाम हस्ती चला रहा है वही खुदा है 
दिखाई भी जो न दे नज़र भी जो आ रहा है वही खुदा है 

तलाश उसको न कर बुतों रूतों वो है बदलती हुवे रूतों में 
जो दिन को रात और रात को दिन बना रहा है वही खुदा है 

नज़र भी रखे समाअतें भी वह जान भी लेता है नियतें भी 
जो खाना ला शऊर में जगमगा रहा है वही खुदा है 

किसी को ताज वक़ार बख्से किसी को ज़िल्लत के गार बख्से 
जो सब के माथों पे मेहर कुदरत लगा रहा है वही खुदा है 

सफ़ेद उसका सियाह उसका नफ़्स है गवाह उसका 
जो शोलाये जान जला रहा है बुझा रहा है वही खुदा है 


कोई तो है जो निज़ाम हस्ती चला रहा है वही खुदा है 

Create a calculator using JavaScript callback function.

In this post we are going to create a calculator using simple HTML and JavaScript callback function. Using callback functions we have to write less code in compare to writing huge line of code using simple JavaScript functions. Callback and promises are the very useful and fastest way to write the code.

Without any further delay, lets start the coding to create a web based simple calculator using the javaScript callback functions. We will discuss the theory part of callback function and promises other article.

Create a html page with name calculator.html. copy the below code snippet and paste in calculator.html file.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
<html>
<title>Calculator</title>
    <head>
        <script src="js/calculator.js"></script>
    </head>
<body>
<h3>Calculator</h3>
Number 1: <input id="number1" type="number"/><br /><br />
Number 2: <input id="number2" type="number"/><br /><br />
<input type="button" onclick="calc(addNum)" value="Add" id="add" />
<input type="button" value="Multiply" onclick="calc(multiplyNum)" id="multiply" />
<input type="button" value="Divide" id="divide" onclick="calc(divideNum)" />
<br /><br />
Result: <input id="result" type="number"/><br />
</body>

</html>

Now create a folder with name js in the same directory where you have created your html page, this js folder is to separate the js file from other files.

Now open the js folder and create a calculator.js file.

Copy the below js code snippet the paste it in your calculator.js file.


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
function calc(callback) {
    var n1 = parseFloat(document.getElementById("number1").value);
    var n2 = parseFloat(document.getElementById("number2").value);
    var result = callback(n1, n2);
    document.getElementById("result").value = result;
}

function multiplyNum(n1, n2) {
    return n1 * n2;
}
function divideNum(n1, n2) {
    return n1 / n2;
}
function addNum(n1, n2) {
    return n1 + n2;
}

Now open your calculator.html file in browser and see the result. below is the screen shot of the calculator.

callback function calculator-rashidjorvee
callback function calculator

You may download the complete exercise from GitHub https://github.com/RashidJorvee/callbackFunctionJS

ORA-12170: TNS:Connect timeout occurred

When we face "ORA-12170: TNS Connect timeout occurred", then immediately check the following 

  • TNS_ADMIN environment variable is defined or not
  • ORACLE_HOME environment variable is defined as "C:\oraclexe\app\oracle\product\11.2.0\server". 
  • "C:\oraclexe\app\oracle\product\11.2.0\server\Network\Admin\sqlnet.ora" was located NAMES.DIRECTORY_PATH specifies EZCONNECT in the sqlnet.ora file
  • EZCONNECT is not the first naming method in NAMES.DIRECTORY_PATH which may conflict with other naming methods specified

Steps need to follow to fix the issue

  • Try moving EZCONNECT to the first position in NAMES.DIRECTORY_PATH in the sqlnet.ora file
  • Verify that the database server is running
  • The following profile parameters may need to be set to larger values in the sqlnet.ora file on the database server: SQLNET.INBOUND_CONNECT_TIMEOUT, SQLNET.SEND_TIMEOUT, and SQLNET.RECV_TIMEOUT
  • Try to TNSPing (DESCRIPTION=(ADDRESS=(PORT=<port number> e.g. 1521)(HOST=<IP address> e.g. 10.20.30.40)(PROTOCOL=TCP))) using the TNS Ping button on the toolbar

Consider defining a bean of type in your configuration

A compile-time error thrown by Spring application as following "Consider defining a bean of type 'org.sling.service.ServiceClass' in your configuration". This means we have created a class or interface and trying to use it as a service or bean, but your class or interface doesn't have the feature of bean. 
So, to fix this with a service class use annotation @Service [org.springframework.stereotype.Service] on top of your class declaration will fix this error.

How to push any PDF or word file to Kindle?

Login to Amazon and go to manage your content and device section from your account.
Click on the device tab, after clicking on device tab you will see the below screen. This screen will show you all your kindle apps and at the last your Kindle email address. Using this kindle email address you can push your document to Kindle. For that you have to also set the authorized sender so that email with attachment only with those email address will be get pushed into your Kindle app.

Kindle-email-address rashid jorvee
Kindle email address screen


References: