Index: client_app/src/components/login/login.js
===================================================================
--- client_app/src/components/login/login.js	(revision 19ad8438d36055d2223a068f935053a202359040)
+++ client_app/src/components/login/login.js	(revision 7944fab29e760bacd71fc1f90e963c337e5b7cca)
@@ -29,4 +29,5 @@
         return(
             <Container>
+                <h1 style={{color: "green"}}>{props.success}</h1>
                 <h1 style={{color: "red"}}>{props.error}</h1>
                 <Form onSubmit={onFormSubmit}>
Index: client_app/src/components/main/App.js
===================================================================
--- client_app/src/components/main/App.js	(revision 19ad8438d36055d2223a068f935053a202359040)
+++ client_app/src/components/main/App.js	(revision 7944fab29e760bacd71fc1f90e963c337e5b7cca)
@@ -42,5 +42,5 @@
                       <Route path={"/company/jobs"} render={() => <CompanyJobs userProfile={this.state.currentUser}/>}/>
                       <Route path={"/company/internships"} render={() => <CompanyInternships userProfile={this.state.currentUser}/>}/>
-                      <Route path={"/register/user"} render={() => <RegisterUser error={null}/>}/>
+                      <Route path={"/register/user"} render={() => <RegisterUser error={null} success={null}/>}/>
                       <Route path={"/logout"} render={() => <Redirect to={"/login"}/>}/>
                       <Route path={"/"} render={() => <Redirect to={"/login"}/>}/>
Index: client_app/src/components/register/register_user_form.js
===================================================================
--- client_app/src/components/register/register_user_form.js	(revision 19ad8438d36055d2223a068f935053a202359040)
+++ client_app/src/components/register/register_user_form.js	(revision 7944fab29e760bacd71fc1f90e963c337e5b7cca)
@@ -1,5 +1,5 @@
 import React from 'react';
 import 'semantic-ui-react';
-import {Button, Container, Form} from "semantic-ui-react";
+import {Button, Container, Dropdown, Form, Label} from "semantic-ui-react";
 import { Redirect } from 'react-router-dom';
 import SkillFetch from "../../repository/skill_repo";
@@ -18,7 +18,9 @@
             retainedSkills: [],
             skillsToLearn: [],
-            allSkills: [],
-            error: props.error
+            error: props.error,
+            success: props.success,
+            sortedOptions:[]
         }
+        this.attemptRegister = this.attemptRegister.bind(this);
     }
 
@@ -30,5 +32,53 @@
     }
 
+    setKnown = (e, {value}) =>{
+        this.setState({
+            retainedSkills: value
+        })
+    }
+
+    setToKnow = (e, {value}) =>{
+        this.setState({
+            skillsToLearn: value
+        })
+    }
+
+    attemptRegister(){
+        UserRegister.userRegister(
+            this.state.email,
+            this.state.password,
+            this.state.name,
+            this.state.surname,
+            this.state.retainedSkills,
+            this.state.skillsToLearn
+        ).then(res => {
+            if(res.data.success!=null){
+                this.setState({
+                    success: res.data.success,
+                    error: null
+                })
+            }else{
+                this.setState({
+                    error: res.data.error,
+                    success: null
+                })
+            }
+        }).catch(err => {
+            this.setState({
+                error: "User already exists!",
+                success: null
+            })
+        });
+    }
+
     render() {
+        console.log(this.state.success);
+
+        if(this.state.success!=null){
+            return(
+                <Redirect to={"/login"} success={this.state.success}/>
+            );
+        }
+
         return (
             <Container>
@@ -43,10 +93,10 @@
                     <Form.Input id="surname" name="surname" type='text' required fluid label='Surname'
                                 placeholder='Enter surname.' onChange={this.handleCheck}/>
-                                <label>Skills you know:</label>
-                    <select multiple="" class="ui dropdown">
-                        {this.state.allSkills.map(item => {
-                            return <option value={item.id}>{item.name}</option>
-                        })}
-                    </select>
+                                <Label>Select skills you know:</Label>
+                    <Dropdown placeholder="Skills you know..." fluid multiple selection options={this.state.sortedOptions} onChange={this.setKnown}/>
+                    <br/>
+                    <Label>Select skills you want to know:</Label>
+                    <Dropdown placeholder="Skills you want to learn..." fluid multiple selection options={this.state.sortedOptions} onChange={this.setToKnow}/>
+                    <br/>
                     <Button type="submit">Register</Button>
                 </Form>
@@ -57,24 +107,17 @@
     componentDidMount(){
         SkillFetch.fetchAll().then((data) =>{
+            var sorted = [];
+            data.data.forEach(item => {
+               var obj = {
+                   key: item.id,
+                   text: item.name,
+                   value: item.id
+               }
+               sorted.push(obj);
+            });
+
             this.setState({
-                allSkills: data.data
+                sortedOptions: sorted
             })
-        })
-    }
-
-    attemptRegister(){
-        UserRegister.userRegister(
-            this.state.email,
-            this.state.password,
-            this.state.name,
-            this.state.surname,
-            this.state.retainedSkills,
-            this.state.skillsToLearn
-        ).then(data => {
-            if(data.success){
-                return <Redirect to={"/login"}/>
-            }else{
-                return <Redirect to={"/user/register"}  error={data.error}/>
-            }
         })
     }
Index: client_app/src/repository/register_repo.js
===================================================================
--- client_app/src/repository/register_repo.js	(revision 19ad8438d36055d2223a068f935053a202359040)
+++ client_app/src/repository/register_repo.js	(revision 7944fab29e760bacd71fc1f90e963c337e5b7cca)
@@ -2,5 +2,5 @@
 
 const UserRegister = {
-    userRegister: (email, password, name, surname, skillsRetained, skillsToLearn) => {
+    userRegister: (email, password, name, surname, retainedSkills, skillsToLearn) => {
         return axios.post("/register/user", {
             "email": email,
@@ -8,5 +8,5 @@
             "name": name,
             "surname": surname,
-            "skillsRetained": skillsRetained,
+            "retainedSkills": retainedSkills,
             "skillsToLearn": skillsToLearn
         });
Index: src/main/java/it/finki/tinki/model/exception/UserExistsException.java
===================================================================
--- src/main/java/it/finki/tinki/model/exception/UserExistsException.java	(revision 19ad8438d36055d2223a068f935053a202359040)
+++ src/main/java/it/finki/tinki/model/exception/UserExistsException.java	(revision 7944fab29e760bacd71fc1f90e963c337e5b7cca)
@@ -1,3 +1,4 @@
 package it.finki.tinki.model.exception;
+
 
 public class UserExistsException extends RuntimeException{
