Most accurrate Click Heatmap

Works regardless on screen resolution

Click Conversion Tracking

Monitor button and link clicks, analyze reports

Elements popularity

See most active areas of your web

Visitor Activity

See what users are doing on your website.
Analyze usage patterns.

Android Mobile App

Access your stats with one click from
your mobile phone screen..

Downloaded Files

Monitor files your users have downloaded
by simply specifying file extensions like *.mp3, *.pdf.

An investment that pays for itself after just a few weeks of using it.

One-time payment, no monthly fees
No 24 hour wait time like with Google Analytics.
Real-time results now

Heatmap, conversion tracking, web analytics

Noclassdeffounderror Java


If you are a java developer, you definitely were experiencing java class not found exception with this error: noclassdeffounderror java . But what's behind this error?

We'll explain in next few lines:

Usually compiler tries to find a class within your classpath, but the class is not there. Therefore you're getting noclassdeffounderror.

Solutions:

If you are running a java command from command line:

1. Check included .jar files within your classpath

In windows environment type a command: "set"

Result should be something like:

C:\Windows\system32>set
ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\m\AppData\Roaming
asl.log=Destination=file
CommonProgramFiles=C:\Program Files\Common Files
CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
CommonProgramW6432=C:\Program Files\Common Files
COMPUTERNAME=BATMAN-PC
ComSpec=C:\Windows\system32\cmd.exe
configsetroot=C:\Windows\ConfigSetRoot
FP_NO_HOST_CHECK=NO
GIT_SSH=D:\Prog\TortoiseGit\bin\TortoiseGitPlink.exe
HOMEDRIVE=C:
HOMEPATH=\Users\m
LOCALAPPDATA=C:\Users\m\AppData\Local
LOGONSERVER=\\MicrosoftAccount
NUMBER_OF_PROCESSORS=6
OS=Windows_NT
Path=C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\NVIDIA Corporati
on\PhysX\Common;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windo
ws\System32\WindowsPowerShell\v1.0\;C:\ProgramData\Lenovo\ReadyApps;d:\prog\Java
\bin\;d:\prog\Firefox\;D:\Prog\TortoiseSVN\bin;d:\prog\ant\bin\;d:\prog\svn\bin\
;D:\Prog\TortoiseGit\bin;C:\Program Files (x86)\Skype\Phone\
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
PROCESSOR_ARCHITECTURE=AMD64
PROCESSOR_IDENTIFIER=AMD64 Family 16 Model 10 Stepping 0, AuthenticAMD
PROCESSOR_LEVEL=16
PROCESSOR_REVISION=0a00
ProgramData=C:\ProgramData
ProgramFiles=C:\Program Files
ProgramFiles(x86)=C:\Program Files (x86)
ProgramW6432=C:\Program Files
PROMPT=$P$G
PSModulePath=C:\Windows\system32\WindowsPowerShell\v1.0\Modules\
PUBLIC=C:\Users\Public
READYAPPS=C:\ProgramData\Lenovo\ReadyApps
SESSIONNAME=Console
SVN_SSH=D:\Prog\TortoiseGit\bin\TortoiseGitPlink.exe
SystemDrive=C:
SystemRoot=C:\Windows
TEMP=C:\Users\m\AppData\Local\Temp
TMP=C:\Users\m\AppData\Local\Temp
TVT=C:\Program Files (x86)\Lenovo
USERDOMAIN=BATMAN-PC
USERDOMAIN_ROAMINGPROFILE=BATMAN-PC
USERNAME=m
USERPROFILE=C:\Users\m
windir=C:\Windows


Then,
another command: set CLASSPATH=$CLASSPATH$"c:\{yourdirectorywithjarfiles}"

This should add visibility of your jar files within the classpath.

Optionally, you can specify a classpath this way:

java -jar mypackage.jar -cp c:\{yourdirectorywithjarfiles}


 
Guest Posting / Blogging

We're looking for guest bloggers to write articles about web technologies, latest trends, e-commerce and online marketing.

If you are interested, please drop us an email to info at codegravity dot com. Thank you !

 
Magento Multistore and Multi Website

Author Bio :

Jason Roiz is Magento developer at OSSMedia Magento development services company and is also engaged in writing informative articles on best tools and tricks for Magento development. His write-ups have proved beneficial for a wider group of Magento developers across the globe.

It is common knowledge that Magento is always in sync with the requirements of merchants planning to take their business online. When it comes to looking for the most ideal content management system to build their eShop on, Magento springs up almost instantly.

Magento-Multi-Website-and-Multistore-Explained

The performance levels and the scalability of this CMS has already given the other well established CMS platforms a serious run for their money. And one such feature that further elevates Magento's significance is the ability to set up and host multiwebsites and multi-stores.

This new feature under the Magento hood is built with great attention to detail. The system that allows for you to build multiwebsites and stores is called GWS (Global, Website, Store):

  • Global signifies the installation in its entirety.
  • Website signifies the source that hosts multiple stores.
  • Store (or store view group): While a single website may be hosting several stores, but when it comes to managing the frontend-specific elements like categories and product displays, it can be done from the stores. The store view group lets you address the root categories and this is how you can make sure that you can set up more than one store on a single website.
  • Store View refers to the interface between the website and the end-user. It dictates how data is showcased on the website.

Let's Take an Example

Take, for instance, a scenario where in you want to open an online store that can sell shoes, electronics and grooming products. Moving forward, we divide our catalogue into 2 stores and 2 websites. Now, we can decide on selling the electronic good from their exclusive website while shoes and grooming products can be sold collectively on the other website. So, we buy domains electronics.com and lookgood.com. Now, in order to ensure that information about customers and the order-specific details on the two websites don't get mixed up, we turn off the data sharing feature between the two websites.

On lookgood.com, we can further build two stores – shoes and grooming products. Now, both, shoes and the grooming products entail a wide range individually in terms of the variety and the price bands they belong to. So, what we are ging to do is that we will segregate these two in different sub categories of their own so that we do not have to deal with an enormous single category. With the stores finally created, corresponding root categories will be assigned to them.

Besides, it would not be a bad idea to have a catalog for both your websites in 2 different languages - English and let's say, French. To implement the same, there is the need to create an English and French store view for all the stores.

Configuration

The GWS system is utilized as a sort of tree by the Magento setup while putting up the store. The Global settings refer to the default settings that are providing the stores with their elementary structure. To explicitly state that a particular feature is only meant for the specific website or store view, we need to un-check the checkbox against that feature. For example, we can have PayPal as the payment system on both websites, but we want Nelnet to be there only on lookgood.com. For implementing the same, we need to head for the configurational settings and in there, select lookgood.com from the store view's drop-down menu. PayPal can be enabled or disabled for this website.

Settings for The Store View

When you are through with all the steps involved in creating the store view, you then have to move to modifying the configurational settings in the layout, along with makes some tweaks to the visual interface of the store view. Customers can also resort to the drop down for switching from one view to the other. On every reload, you can substitute the current page with the alternate view, without having to refresh it completely.

This also makes it possible for us to run A-B tests on different kinds of designs so that you are able to figure out which design can lead to the maximum conversions for your business. the diverse designs in order to find which one tosses at you maximum conversions.

So, with a clear-eyed understanding of how multistore and multi websites work in Magento, it would be a great idea to transform this idea into something tangible.

 
Binding Dropdown using jQuery

Author Bio :

Amy is WordPress developer by profession. She works for WordPrax - WordPress website development company and has a strong inclination for a suite of creative endeavors. Blogging meanwhile is a new found hobby for Amy.

Binding-Dropdown-Using-jQuery

Dropdown binding is perhaps one of the best things possible with jQuery. Eventhough it is feasible to bind a dropdown list using C#, opting for jQuery to perform the job entails utmost performance and convenience. This is a post which will walk you through the steps associated with using jQuery for binding a dropdown list.

Coming to the process of binding dropdown list using jQuery

Step 1- Add the reference jQuery Library

Prior to being able to use any particular function(s) available in jQuery, it is crucial for you to have the reference for the same within the aspx page. With jQuery 2.0 as the current working version, you can use the below line of code for providing reference of jQuery library within the aspx page:

<script src="/jquery-2.0.js" type="text/javascript"></script>

Step 2- Use a function for fetching data from jQuery Library

Just use the below mentioned function for deriving data from jQuery Library:

<script >

$(document).ready(function () {

$.ajax({

type: "POST",

contentType: "application/json; charset=utf-8",

url: "test.aspx/LoadCountry",

data: "{}",

dataType: "json",

success: function (Result) {

$.each(Result.d, function (key, value) {

$("#ddlcountry").append($("<option></option>").val(value.CountryId).html(value.CountryName));

});

},

error: function (Result) {

alert("Error");

}

});

});

Here's an explanation of the above code snippet:

1. $(document).ready(function () {

The above function is executed once the document has been loaded completely on the client machine. It is important to note that a page can't be manipulated securely unless the document is ready.

2. $.ajax({

You can combine jQuery and Ajax for getting and posting data on the server. Here, $.ajax is used for posting data to the sever and fetching data back for binding the same within the dropdown list.

3. type: "POST",

In this tutorial, I've assumed that the page just has two conditions: get and post. The above line of code represents this assumption.

4. contentType: "application/json; charset=utf-8",

This line of code represents as to what the content is encoded in.

5. url: "test.aspx/LoadCountry",

Th above line of code represents that URL holds the address of location where it is connected. So, text.aspx represents the name of page and LoadCountry is the name of method which allows you to connect the URL to database, followed by returning data on execution of jQuery function.

6. data: "{}",

Usually, data is passed the parameters (data) jQuery to code that's associated with the chosen method(here, it is LoadCountry).

7. dataType: "json",

This line of code represents that the all data types used in the explained example are supported by JSON. Some popular data types supported by JSON include: number, boolean, string, value, array, white space, object and many more.

8. success: function (Result) {

$.each(Result.d, function (key, value) {

$("#ddlcountry").append($("<option></option>").val(value.CountryId).html(value.CountryName));

});

},

In the above code snippet, Success is a pre-defined function available in jQuery. Also, the result is the object value $.Each which works in the form of a continuous loop until the desired values are returned. Within the lines of code:

$("#ddlcountry").append($("<option></option>").val(value.CountryId).html(value.CountryName));

  • #ddlcountry is the id of the 'country' drop-down

  • append($(“<option></option>”).val(value.CountryId).html(value.CountryName));

    represents that new options have been added into the dropdown list and their respective values are represented by value.CountryId and value.CountryName.

9. error: function (Result) {

alert("Error");

Here, Error is also a jQuery function which is executed each time an error result is derived from executing the function.

Now, here is the code behind the above mentioned function:

// Country POCO class public class Country { public int CountryID {get; set;} public string CountryName {get; set;} }

[System.Web.Services.WebMethod] public static List<Country> LoadCountry() { return LoadCountries(); }

The above code represents the static type method used for executing the function.

The entire code snippet is shown below:

/// <summary> /// This method returns a list of Countries /// </summary> /// <returns>List<Country></returns> public static List<Country> LoadCountries() { //create a reference of List<Property>. List<Country> CountryInformation = new List<Country>();

// Creating database context and write Linq query to fetch countries list

using (var Context = new DatabaseContext()) { var list = Context.Country.ToList(); if(list != null && list.Count > 0) { foreach(var item in list) { CountryInformation.Add(new Country() { CountryID = item.CountryId, CountryName = item.CountryName }); } } return CountryInformation; } }

We're done!

OutPut :

dropdown-output

Conclusion

Binding dropdown list on a page has always posed as a great challenge to developers. I hope the code mentioned within this post would aid you in performing the job with utmost amount of perfection.

 
Slow Apache PHP UniServer on localhost

 

It's been months since I was trying to figure out WHY was PHP and Apache sooo damn slow on localhost !

I tried uniserver, xampp, wamp, all kind of server bundles which were offering PHP/Apache/MySQL. I was even thinking about developing under Ubuntu linux.

Whenever I tried to refresh a page, it took approximately 3 seconds or even more. Very annoying !

 

I found several posts around the internet such as:

http://drupal.stackexchange.com/questions/13316/very-slow-drupal-loading-on-localhost-via-uniform-server

 

Most of them are instructing you to add lines to windows hosts file. You know what? It doesn't help !

 

What worked for me regarding slow Apache / PHP on localhost

 

>>> I changed localhost to 127.0.0.1 in configuration.php of Joomla installation. That's all ! <<<<

 

I'm currently using Uniserver, which is really great.

If you're using Wordpress, some other CMS, or even no CMS at all, you have to change it in some main database configuration file.

 

Results before running command "wget.exe localhost"

Start time: 2014-12-21 15:28:18
End time: 2014-12-21 15:28:24 (6 seconds difference ! )

 

After the modification:

Start time: 2014-12-21 15:38:21
2014-12-21 15:38:22 (1 second difference ! )

 

waiting 6 seconds vs 1 second can be a huge difference if your're doing some development on localhost !

If I knew that some time ago it could have saved me hours waiting for damn f*** windows trying to resolve localhost to 127.0.0.1 even though this entry was in etc/hosts file !

 

 

 

Content

Articles about software development, new trends


web analytics

Conversion tracking, optimization services


Consulting

Software development, PHP, Java, JEE, Spring, Hibernate